package.options.cmf.d.ts Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of highcharts Show documentation
Show all versions of highcharts Show documentation
JavaScript charting framework
The newest version!
/*!*
*
* Copyright (c) Highsoft AS. All rights reserved.
*
*!*/
import * as Highcharts from "../highcharts";
declare module "../highcharts" {
/**
* (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the initial
* animation when a series is displayed for the `dataLabels`. The animation
* can also be set as a configuration object. Please note that this option
* only applies to the initial animation.
*
* For other animations, see chart.animation and the animation parameter
* under the API methods. The following properties are supported:
*
* - `defer`: The animation delay time in milliseconds.
*/
interface PlotCmfDataLabelsAnimationOptions {
/**
* (Highcharts, Highstock, Highmaps, Gantt) The animation delay time in
* milliseconds. Set to `0` to render the data labels immediately. As
* `undefined` inherits defer time from the series.animation.defer.
*/
defer?: number;
}
/**
* (Highcharts, Highstock) Options for the series data sorting.
*/
interface PlotCmfDataSortingOptions {
/**
* (Highcharts, Highstock) Enable or disable data sorting for the
* series. Use xAxis.reversed to change the sorting order.
*/
enabled?: boolean;
/**
* (Highcharts, Highstock) Whether to allow matching points by name in
* an update. If this option is disabled, points will be matched by
* order.
*/
matchByName?: boolean;
/**
* (Highcharts, Highstock) Determines what data value should be used to
* sort by.
*/
sortKey?: string;
}
/**
* (Highstock) Options for the _Series on point_ feature. Only `pie` and
* `sunburst` series are supported at this moment.
*/
interface PlotCmfOnPointOptions {
/**
* (Highstock) Options for the connector in the _Series on point_
* feature.
*
* In styled mode, the connector can be styled with the
* `.highcharts-connector-seriesonpoint` class name.
*/
connectorOptions?: (Highcharts.PlotCmfOnPointConnectorOptions|Highcharts.SVGAttributes);
/**
* (Highstock) The `id` of the point that we connect the series to. Only
* points with a given `plotX` and `plotY` values and map points are
* valid.
*/
id?: string;
/**
* (Highstock) Options allowing to set a position and an offset of the
* series in the _Series on point_ feature.
*/
position?: (object|Highcharts.PlotCmfOnPointPositionOptions);
}
/**
* (Highstock) Chaikin Money Flow indicator (cmf).
*
* Configuration options for the series 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)
*
* **TypeScript:**
*
* - the type option must always be set.
*
* - when accessing an array of series, the combined set of all series types
* is represented by Highcharts.SeriesOptionsType . Narrowing down to the
* specific type can be done by checking the `type` property. (see online
* documentation for example)
*/
interface PlotCmfOptions {
/**
* (Highstock) Accessibility options for a series.
*/
accessibility?: Highcharts.SeriesAccessibilityOptionsObject;
/**
* (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:
*
* - `defer`: The animation delay time in milliseconds.
*
* - `duration`: The duration of the animation in milliseconds.
* (Defaults to `1000`)
*
* - `easing`: Can be a string reference to an easing function set on
* the `Math` object or a function. See the _Custom easing function_
* demo below. (Defaults to `easeInOutSine`)
*
* Due to poor performance, animation is disabled in old IE browsers for
* several chart types.
*/
animation?: (boolean|Highcharts.AnimationOptionsObject);
/**
* (Highstock) Sets the color blending in the boost module.
*/
boostBlending?: Highcharts.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.
*/
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. Changes to the series' color will also be
* reflected in a chart's legend and tooltip.
*/
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?: (Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.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}`.
*
* Since v11, CSS variables on the form `--highcharts-color-{n}` make
* changing the color scheme very convenient.
*/
colorIndex?: number;
/**
* (Highcharts, Highstock, Highmaps) Determines what data value should
* be used to calculate point color if `colorAxis` is used. Requires to
* set `min` and `max` if some custom point property is used or if
* approximation for data grouping is set to `'sum'`.
*/
colorKey?: string;
/**
* (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?: Highcharts.OptionsCompareValue;
/**
* (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 last point
* **before** 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, Highstock) Whether to connect a graph line across null
* points, or render a gap between the two points on either side of the
* null.
*
* In stacked area chart, if `connectNulls` is set to true, null points
* are interpreted as 0.
*/
connectNulls?: boolean;
/**
* (Highcharts, Highstock, Gantt) When true, each point or 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) 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) Cumulative Sum feature replaces points' values with the
* following formula: `sum of all previous points' values + current
* point's value`. Works only for points in a visible range. Adds the
* `cumulativeSum` field to each point object that can be accessed e.g.
* in the tooltip.pointFormat.
*
* With `dataGrouping` enabled, default grouping approximation is set to
* `sum`.
*/
cumulative?: boolean;
/**
* (Highstock) Defines if cumulation should start from the first point
* within the visible range or should start from the last point
* **before** the range.
*
* In other words, this flag determines if first point within the
* visible range will start at 0 (`cumulativeStart=true`) or should have
* been already calculated according to the previous point
* (`cumulativeStart=false`).
*/
cumulativeStart?: boolean;
/**
* (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|Highcharts.CursorValue);
/**
* (Highstock) A reserved subspace to store options and values for
* customized functionality. Here you can add additional data for your
* own event callbacks and formatter callbacks.
*/
custom?: Highcharts.Dictionary;
/**
* (Highstock) Name of 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?: Highcharts.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. Highcharts Stock by default
* applies data grouping when the points become closer than a certain
* pixel value, determined by the `groupPixelWidth` option.
*
* If data grouping is applied, the grouping information of grouped
* points can be read from the Point.dataGroup. If point options other
* than the data itself are set, for example `name` or `color` or custom
* properties, the grouping logic doesn't know how to group it. In this
* case 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?: Highcharts.DataGroupingOptionsObject;
/**
* (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?: (Highcharts.PlotCmfDataLabelsOptions|Array);
/**
* (Highcharts, Highstock) Options for the series data sorting.
*/
dataSorting?: (Highcharts.DataSortingOptionsObject|Highcharts.PlotCmfDataSortingOptions);
/**
* (Highstock) A description of the series to add to the screen reader
* information about the series.
*/
description?: string;
/**
* (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?: Highcharts.SeriesEventsOptionsObject;
/**
* (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?: Highcharts.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 5 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?: Highcharts.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) Highlight only the hovered point and fade the remaining
* points.
*
* Scatter-type series require enabling the 'inactive' marker state and
* adjusting opacity. Note that this approach could affect performance
* with large datasets.
*/
inactiveOtherPoints?: boolean;
/**
* (Highstock) 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`.
*/
label?: Highcharts.SeriesLabelOptionsObject;
/**
* (Highstock) The line marks the last price from all points.
*/
lastPrice?: Highcharts.SeriesLastPriceOptionsObject;
/**
* (Highstock) The line marks the last price from visible range of
* points.
*/
lastVisiblePrice?: Highcharts.SeriesLastVisiblePriceOptionsObject;
/**
* (Highstock) What type of legend symbol to render for this series. Can
* be one of `areaMarker`, `lineMarker` or `rectangle`.
*/
legendSymbol?: Highcharts.OptionsLegendSymbolValue;
/**
* (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?: Highcharts.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 and scatter-like
* series. Properties like `fillColor`, `lineColor` and `lineWidth`
* define the visual appearance of the markers. The `symbol` option
* defines the shape. Other series types, like column series, don't have
* markers, but have visual options on the 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?: Highcharts.PointMarkerOptionsObject;
/**
* (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. Note that `zones` takes precedence over the
* negative color. Using `negativeColor` is equivalent to applying a
* zone with value of 0.
*/
negativeColor?: (Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject);
/**
* (Highstock) Options for the _Series on point_ feature. Only `pie` and
* `sunburst` series are supported at this moment.
*/
onPoint?: (object|Highcharts.PlotCmfOnPointOptions);
/**
* (Highstock) Opacity of a series parts: line, fill (e.g. area) and
* dataLabels.
*/
opacity?: number;
/**
* (Highstock) Parameters used in calculation of regression series'
* points.
*/
params?: Highcharts.PlotCmfParamsOptions;
/**
* (Highstock) Properties for each single point.
*/
point?: Highcharts.PlotSeriesPointOptions;
/**
* (Highstock) Same as accessibility.point.descriptionFormat, but for an
* individual series. Overrides the chart wide configuration.
*/
pointDescriptionFormat?: Function;
/**
* (Highstock) Same as accessibility.series.descriptionFormatter, but
* for an individual series. Overrides the chart wide configuration.
*/
pointDescriptionFormatter?: Function;
/**
* (Highcharts, Highstock) When true, X values in the data set are
* relative to the current `pointStart`, `pointInterval` and
* `pointIntervalUnit` settings. This allows compression of the data for
* datasets with irregular X values.
*
* The real X values are computed on the formula `f(x) = ax + b`, where
* `a` is the `pointInterval` (optionally with a time unit given by
* `pointIntervalUnit`), and `b` is the `pointStart`.
*/
relativeXValue?: boolean;
/**
* (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`.
*
* Note that in some cases, like stacked columns or other dense layouts,
* the series may cast shadows on each other. In that case, the
* `chart.seriesGroupShadow` allows applying a common drop shadow to the
* whole series group.
*/
shadow?: (boolean|Highcharts.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. Standalone series are shown in legend by default, and
* linked series are not. Since v7.2.0 it is possible to show series
* that use colorAxis by setting this option to `true`.
*/
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;
/**
* (Highstock) Sonification/audio chart options for a series.
*/
sonification?: Highcharts.SeriesSonificationOptions;
states?: Highcharts.SeriesStatesOptionsObject;
/**
* (Highcharts, Highstock) Whether to apply steps to the line. Possible
* values are `left`, `center` and `right`.
*/
step?: Highcharts.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.
*
* **Note:** The boost module will force this option because of
* technical limitations.
*/
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|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?: Highcharts.SeriesTooltipOptionsObject;
/**
* (Highcharts, Highstock, Gantt) When a series contains a `data` array
* that is longer than this, the Series class looks for data
* configurations of plain numbers or arrays of numbers. The first and
* last valid points are checked. If found, the rest of the data is
* assumed to be the same. This saves expensive data checking and
* indexing in long series, and makes data-heavy charts render faster.
*
* Set it to `0` disable.
*
* Note:
*
* - In boost mode turbo threshold is forced. Only array of numbers or
* two dimensional arrays are allowed.
*
* - In version 11.4.3 and earlier, if object configurations were passed
* beyond the turbo threshold, a warning was logged in the console and
* the data series didn't render.
*/
turboThreshold?: number;
/**
* (Highstock) Set the initial visibility of the series.
*/
visible?: boolean;
/**
* (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;
}
}