%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
| Server IP : 14.207.165.8 / Your IP : 216.73.216.26 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/thread-self/root/var/www/html/ppaobm/vendor/bower-asset/highcharts/ |
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;