devextreme
Version:
HTML5 JavaScript Component Suite for Responsive Web Development
1,390 lines (1,355 loc) • 58.4 kB
TypeScript
/**
* DevExtreme (viz/polar_chart.d.ts)
* Version: 21.1.4
* Build date: Mon Jun 21 2021
*
* Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
import {
UserDefinedElement,
DxElement
} from '../core/element';
import {
DxEvent,
Cancelable,
EventInfo,
NativeEventInfo,
InitializedEventInfo,
ChangedOptionInfo
} from '../events/index';
import {
format
} from '../ui/widget/ui.widget';
import { HatchingDirectionType } from './common';
import {
basePointObject,
baseSeriesObject,
chartAxisObject
} from './chart';
import {
BaseChart,
BaseChartAdaptiveLayout,
BaseChartLegend,
BaseChartOptions,
BaseChartTooltip,
BaseChartAnnotationConfig,
PointInteractionInfo,
TooltipInfo
} from './chart_components/base_chart';
import {
template
} from '../core/templates/template';
import {
VizRange,
DashStyleType,
VizTimeInterval
} from './common';
import {
Font,
FileSavingEventInfo,
ExportInfo,
IncidentInfo
} from './core/base_widget';
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export type PolarChartSeriesType = 'area' | 'bar' | 'line' | 'scatter' | 'stackedbar';
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
interface SeriesInteractionInfo {
target: polarChartSeriesObject
}
export type ArgumentAxisClickEvent = NativeEventInfo<dxPolarChart> & {
readonly argument: Date | number | string;
}
export type DisposingEvent = EventInfo<dxPolarChart>;
export type DoneEvent = EventInfo<dxPolarChart>;
export type DrawnEvent = EventInfo<dxPolarChart>;
export type ExportedEvent = EventInfo<dxPolarChart>;
export type ExportingEvent = EventInfo<dxPolarChart> & ExportInfo;
export type FileSavingEvent = Cancelable & FileSavingEventInfo<dxPolarChart>;
export type IncidentOccurredEvent = EventInfo<dxPolarChart> & IncidentInfo;
export type InitializedEvent = InitializedEventInfo<dxPolarChart>;
export type LegendClickEvent = NativeEventInfo<dxPolarChart> & {
readonly target: polarChartSeriesObject;
}
export type OptionChangedEvent = EventInfo<dxPolarChart> & ChangedOptionInfo;
export type PointClickEvent = NativeEventInfo<dxPolarChart> & PointInteractionInfo;
export type PointHoverChangedEvent = EventInfo<dxPolarChart> & PointInteractionInfo;
export type PointSelectionChangedEvent = EventInfo<dxPolarChart> & PointInteractionInfo;
export type SeriesClickEvent = NativeEventInfo<dxPolarChart> & {
readonly target: polarChartSeriesObject;
}
export type SeriesHoverChangedEvent = EventInfo<dxPolarChart> & SeriesInteractionInfo;
export type SeriesSelectionChangedEvent = EventInfo<dxPolarChart> & SeriesInteractionInfo;
export type TooltipHiddenEvent = EventInfo<dxPolarChart> & TooltipInfo;
export type TooltipShownEvent = EventInfo<dxPolarChart> & TooltipInfo;
export type ZoomEndEvent = Cancelable & NativeEventInfo<dxPolarChart> & {
readonly axis: chartAxisObject;
readonly range: VizRange;
readonly previousRange: VizRange;
readonly actionType: 'zoom' | 'pan';
readonly zoomFactor: number;
readonly shift: number;
}
export type ZoomStartEvent = Cancelable & NativeEventInfo<dxPolarChart> & {
readonly axis: chartAxisObject;
readonly range: VizRange;
readonly actionType: 'zoom' | 'pan';
}
/**
* Specifies properties for PolarChart UI component series.
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface PolarChartSeries extends dxPolarChartSeriesTypesCommonPolarChartSeries {
/**
* Specifies the name that identifies the series.
*/
name?: string;
/**
* Specifies data about a series.
*/
tag?: any;
/**
* Sets the series type.
*/
type?: PolarChartSeriesType;
}
/**
* @deprecated use Properties instead
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartOptions extends BaseChartOptions<dxPolarChart> {
/**
* Specifies adaptive layout properties.
*/
adaptiveLayout?: dxPolarChartAdaptiveLayout;
/**
* Specifies the annotation collection.
*/
annotations?: Array<dxPolarChartAnnotationConfig | any>;
/**
* Specifies argument axis properties for the PolarChart UI component.
*/
argumentAxis?: dxPolarChartArgumentAxis;
/**
* Controls the padding and consequently the angular width of a group of bars with the same argument using relative units. Ignored if the barGroupWidth property is set.
*/
barGroupPadding?: number;
/**
* Specifies a fixed angular width for groups of bars with the same argument, measured in degrees. Takes precedence over the barGroupPadding property.
*/
barGroupWidth?: number;
/**
* Specifies settings common for all annotations in the PolarChart.
*/
commonAnnotationSettings?: dxPolarChartCommonAnnotationConfig;
/**
* An object defining the configuration properties that are common for all axes of the PolarChart UI component.
*/
commonAxisSettings?: dxPolarChartCommonAxisSettings;
/**
* An object defining the configuration properties that are common for all series of the PolarChart UI component.
*/
commonSeriesSettings?: dxPolarChartCommonSeriesSettings;
/**
* Specifies the color of the parent page element.
*/
containerBackgroundColor?: string;
/**
* Customizes an individual annotation.
*/
customizeAnnotation?: ((annotation: dxPolarChartAnnotationConfig | any) => dxPolarChartAnnotationConfig);
/**
* An object providing properties for managing data from a data source.
*/
dataPrepareSettings?: {
/**
* Specifies whether or not to validate the values from a data source.
*/
checkTypeForAllData?: boolean,
/**
* Specifies whether or not to convert the values from a data source into the data type of an axis.
*/
convertToAxisDataType?: boolean,
/**
* Specifies how to sort the series points.
*/
sortingMethod?: boolean | ((a: { arg?: Date | number | string, val?: Date | number | string }, b: { arg?: Date | number | string, val?: Date | number | string }) => number)
};
/**
* Specifies the properties of a chart's legend.
*/
legend?: dxPolarChartLegend;
/**
* Forces the UI component to treat negative values as zeroes. Applies to stacked-like series only.
*/
negativesAsZeroes?: boolean;
/**
* A function that is executed when a label on the argument axis is clicked or tapped.
*/
onArgumentAxisClick?: ((e: { component?: dxPolarChart, element?: DxElement, model?: any, event?: DxEvent, argument?: Date | number | string }) => void) | string;
/**
* A function that is executed when a legend item is clicked or tapped.
*/
onLegendClick?: ((e: LegendClickEvent) => void) | string;
/**
* A function that is executed when a series is clicked or tapped.
*/
onSeriesClick?: ((e: SeriesClickEvent) => void) | string;
/**
* A function that is executed after the pointer enters or leaves a series.
*/
onSeriesHoverChanged?: ((e: SeriesHoverChangedEvent) => void);
/**
* A function that is executed when a series is selected or selection is canceled.
*/
onSeriesSelectionChanged?: ((e: SeriesSelectionChangedEvent) => void);
/**
* A function that is executed when zooming or panning ends.
*/
onZoomEnd?: ((e: ZoomEndEvent) => void);
/**
* A function that is executed when zooming or panning begins.
*/
onZoomStart?: ((e: ZoomStartEvent) => void);
/**
* Specifies how the chart must behave when series point labels overlap.
*/
resolveLabelOverlapping?: 'hide' | 'none';
/**
* Specifies properties for PolarChart UI component series.
*/
series?: PolarChartSeries | Array<PolarChartSeries>;
/**
* Specifies whether a single series or multiple series can be selected in the chart.
*/
seriesSelectionMode?: 'multiple' | 'single';
/**
* Defines properties for the series template.
*/
seriesTemplate?: {
/**
* Specifies a callback function that returns a series object with individual series settings.
*/
customizeSeries?: ((seriesName: any) => PolarChartSeries),
/**
* Specifies a data source field that represents the series name.
*/
nameField?: string
};
/**
*
*/
tooltip?: dxPolarChartTooltip;
/**
* Indicates whether or not to display a 'spider web'.
*/
useSpiderWeb?: boolean;
/**
* Specifies value axis properties for the PolarChart UI component.
*/
valueAxis?: dxPolarChartValueAxis;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartAdaptiveLayout extends BaseChartAdaptiveLayout {
/**
*
*/
height?: number;
/**
*
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxis extends dxPolarChartCommonAxisSettings {
/**
* Specifies the desired type of axis values.
*/
argumentType?: 'datetime' | 'numeric' | 'string';
/**
* Specifies the minimum distance between two neighboring major ticks in pixels. Applies only to the axes of the 'continuous' and 'logarithmic' types.
*/
axisDivisionFactor?: number;
/**
* Specifies the order of categories on an axis of the 'discrete' type.
*/
categories?: Array<number | string | Date>;
/**
* Defines an array of the argument axis constant lines.
*/
constantLines?: Array<dxPolarChartArgumentAxisConstantLines>;
/**
* Specifies whether or not to display the first point at the angle specified by the startAngle property.
*/
firstPointOnStartAngle?: boolean;
/**
* Specifies the elements that will be highlighted when the argument axis is hovered over.
*/
hoverMode?: 'allArgumentPoints' | 'none';
/**
* Specifies properties for argument axis labels.
*/
label?: dxPolarChartArgumentAxisLabel;
/**
* Specifies a value used to calculate the range on a logarithmic axis within which the axis should be linear. Applies only if the data source contains negative values or zeroes.
*/
linearThreshold?: number;
/**
* Specifies the value to be raised to a power when generating ticks for a logarithmic axis.
*/
logarithmBase?: number;
/**
*
*/
minorTick?: dxPolarChartArgumentAxisMinorTick;
/**
* Specifies the number of minor ticks between two neighboring major ticks.
*/
minorTickCount?: number;
/**
* Specifies the interval between minor ticks.
*/
minorTickInterval?: VizTimeInterval;
/**
* Specifies the value to be used as the origin for the argument axis.
*/
originValue?: number;
/**
* Specifies the period of the argument values in the data source.
*/
period?: number;
/**
* Specifies the angle in arc degrees to which the argument axis should be rotated. The positive values rotate the axis clockwise.
*/
startAngle?: number;
/**
* Specifies properties for argument axis strips.
*/
strips?: Array<dxPolarChartArgumentAxisStrips>;
/**
*
*/
tick?: dxPolarChartArgumentAxisTick;
/**
* Specifies an interval between axis ticks/grid lines.
*/
tickInterval?: VizTimeInterval;
/**
* Specifies the required type of the argument axis.
*/
type?: 'continuous' | 'discrete' | 'logarithmic';
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisConstantLines extends dxPolarChartCommonAxisSettingsConstantLineStyle {
/**
* Specifies whether to display the constant line behind or in front of the series.
*/
displayBehindSeries?: boolean;
/**
* Specifies whether to extend the axis to display the constant line.
*/
extendAxis?: boolean;
/**
* An object defining constant line label properties.
*/
label?: dxPolarChartArgumentAxisConstantLinesLabel;
/**
* Specifies a value to be displayed by a constant line.
*/
value?: number | Date | string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisConstantLinesLabel extends dxPolarChartCommonAxisSettingsConstantLineStyleLabel {
/**
* Specifies the text to be displayed in a constant line label.
*/
text?: string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisLabel extends dxPolarChartCommonAxisSettingsLabel {
/**
* Specifies the text for a hint that appears when a user hovers the mouse pointer over a label on the argument axis.
*/
customizeHint?: ((argument: { value?: Date | number | string, valueText?: string }) => string);
/**
* Specifies a callback function that returns the text to be displayed by argument axis labels.
*/
customizeText?: ((argument: { value?: Date | number | string, valueText?: string }) => string);
/**
* Formats a value before it is displayed in an axis label.
*/
format?: format;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisMinorTick extends dxPolarChartCommonAxisSettingsMinorTick {
/**
* Shifts minor ticks from the reference position.
*/
shift?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisStrips extends dxPolarChartCommonAxisSettingsStripStyle {
/**
* Specifies a color for a strip.
*/
color?: string;
/**
* Specifies an end value for a strip.
*/
endValue?: number | Date | string;
/**
* An object that defines the label configuration properties of a strip.
*/
label?: dxPolarChartArgumentAxisStripsLabel;
/**
* Specifies a start value for a strip.
*/
startValue?: number | Date | string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisStripsLabel extends dxPolarChartCommonAxisSettingsStripStyleLabel {
/**
* Specifies the text displayed in a strip.
*/
text?: string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartArgumentAxisTick extends dxPolarChartCommonAxisSettingsTick {
/**
* Shifts ticks from the reference position.
*/
shift?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettings {
/**
* Specifies whether to allow decimal values on the axis. When false, the axis contains integer values only.
*/
allowDecimals?: boolean;
/**
* Specifies the color of the line that represents an axis.
*/
color?: string;
/**
* Specifies the appearance of all the UI component's constant lines.
*/
constantLineStyle?: dxPolarChartCommonAxisSettingsConstantLineStyle;
/**
* Specifies whether ticks/grid lines of a discrete axis are located between labels or cross the labels.
*/
discreteAxisDivisionMode?: 'betweenLabels' | 'crossLabels';
/**
* Specifies whether to force the axis to start and end on ticks.
*/
endOnTick?: boolean;
/**
* An object defining the configuration properties for the grid lines of an axis in the PolarChart UI component.
*/
grid?: {
/**
* Specifies a color for grid lines.
*/
color?: string,
/**
* Specifies an opacity for grid lines.
*/
opacity?: number,
/**
* Indicates whether or not the grid lines of an axis are visible.
*/
visible?: boolean,
/**
* Specifies the width of grid lines.
*/
width?: number
};
/**
* Indicates whether or not an axis is inverted.
*/
inverted?: boolean;
/**
* An object defining the label configuration properties that are common for all axes in the PolarChart UI component.
*/
label?: dxPolarChartCommonAxisSettingsLabel;
/**
* Specifies the properties of the minor grid.
*/
minorGrid?: {
/**
* Specifies a color for the lines of the minor grid.
*/
color?: string,
/**
* Specifies an opacity for the lines of the minor grid.
*/
opacity?: number,
/**
* Indicates whether the minor grid is visible or not.
*/
visible?: boolean,
/**
* Specifies a width for the lines of the minor grid.
*/
width?: number
};
/**
* Specifies the properties of the minor ticks.
*/
minorTick?: dxPolarChartCommonAxisSettingsMinorTick;
/**
* Specifies the opacity of the line that represents an axis.
*/
opacity?: number;
/**
* An object defining configuration properties for strip style.
*/
stripStyle?: dxPolarChartCommonAxisSettingsStripStyle;
/**
* An object defining the configuration properties for axis ticks.
*/
tick?: dxPolarChartCommonAxisSettingsTick;
/**
* Indicates whether or not the line that represents an axis in a chart is visible.
*/
visible?: boolean;
/**
* Specifies the width of the line that represents an axis in the chart.
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsConstantLineStyle {
/**
* Specifies a color for a constant line.
*/
color?: string;
/**
* Specifies a dash style for a constant line.
*/
dashStyle?: DashStyleType;
/**
* An object defining constant line label properties.
*/
label?: dxPolarChartCommonAxisSettingsConstantLineStyleLabel;
/**
* Specifies a constant line width in pixels.
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsConstantLineStyleLabel {
/**
* Specifies font properties for a constant line label.
*/
font?: Font;
/**
* Indicates whether or not to display labels for the axis constant lines.
*/
visible?: boolean;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsLabel {
/**
* Specifies font properties for axis labels.
*/
font?: Font;
/**
* Specifies the spacing between an axis and its labels in pixels.
*/
indentFromAxis?: number;
/**
* Decides how to arrange axis labels when there is not enough space to keep all of them.
*/
overlappingBehavior?: 'none' | 'hide';
/**
* Indicates whether or not axis labels are visible.
*/
visible?: boolean;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsMinorTick {
/**
* Specifies a color for the minor ticks.
*/
color?: string;
/**
* Specifies minor tick length.
*/
length?: number;
/**
* Specifies an opacity for the minor ticks.
*/
opacity?: number;
/**
* Indicates whether or not the minor ticks are displayed on an axis.
*/
visible?: boolean;
/**
* Specifies minor tick width.
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsStripStyle {
/**
* An object defining the configuration properties for a strip label style.
*/
label?: dxPolarChartCommonAxisSettingsStripStyleLabel;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsStripStyleLabel {
/**
* Specifies font properties for a strip label.
*/
font?: Font;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAxisSettingsTick {
/**
* Specifies ticks color.
*/
color?: string;
/**
* Specifies tick length.
*/
length?: number;
/**
* Specifies tick opacity.
*/
opacity?: number;
/**
* Indicates whether or not ticks are visible on an axis.
*/
visible?: boolean;
/**
* Specifies tick width.
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonSeriesSettings extends dxPolarChartSeriesTypesCommonPolarChartSeries {
/**
* An object that specifies configuration properties for all series of the area type in the chart.
*/
area?: any;
/**
* An object that specifies configuration properties for all series of the 'bar' type in the chart.
*/
bar?: any;
/**
* An object that specifies configuration properties for all series of the 'line' type in the chart.
*/
line?: any;
/**
* An object that specifies configuration properties for all series of the 'scatter' type in the chart.
*/
scatter?: any;
/**
* An object that specifies configuration properties for all series of the 'stackedBar' type in the chart.
*/
stackedbar?: any;
/**
* Sets a series type.
*/
type?: PolarChartSeriesType;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartLegend extends BaseChartLegend {
/**
* Specifies the text for a hint that appears when a user hovers the mouse pointer over a legend item.
*/
customizeHint?: ((seriesInfo: { seriesName?: any, seriesIndex?: number, seriesColor?: string }) => string);
/**
* Specifies a callback function that returns the text to be displayed by legend items.
*/
customizeText?: ((seriesInfo: { seriesName?: any, seriesIndex?: number, seriesColor?: string }) => string);
/**
* Specifies what series elements to highlight when a corresponding item in the legend is hovered over.
*/
hoverMode?: 'excludePoints' | 'includePoints' | 'none';
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartTooltip extends BaseChartTooltip {
/**
* Specifies the kind of information to display in a tooltip.
*/
shared?: boolean;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxis extends dxPolarChartCommonAxisSettings {
/**
* Specifies a coefficient for dividing the value axis.
*/
axisDivisionFactor?: number;
/**
* Specifies the order of categories on an axis of the 'discrete' type.
*/
categories?: Array<number | string | Date>;
/**
* Defines an array of the value axis constant lines.
*/
constantLines?: Array<dxPolarChartValueAxisConstantLines>;
/**
*
*/
endOnTick?: boolean;
/**
* Specifies properties for value axis labels.
*/
label?: dxPolarChartValueAxisLabel;
/**
* Specifies a value used to calculate the range on a logarithmic axis within which the axis should be linear. Applies only if the data source contains negative values or zeroes.
*/
linearThreshold?: number;
/**
* Specifies the value to be raised to a power when generating ticks for a logarithmic axis.
*/
logarithmBase?: number;
/**
* Specifies a coefficient that determines the spacing between the maximum series point and the axis.
*/
maxValueMargin?: number;
/**
* Specifies a coefficient that determines the spacing between the minimum series point and the axis.
*/
minValueMargin?: number;
/**
* Specifies the minimum length of the visual range.
*/
minVisualRangeLength?: VizTimeInterval;
/**
* Specifies the number of minor ticks between two neighboring major ticks.
*/
minorTickCount?: number;
/**
* Specifies the interval between minor ticks.
*/
minorTickInterval?: VizTimeInterval;
/**
* Specifies whether or not to indicate a zero value on the value axis.
*/
showZero?: boolean;
/**
* Specifies properties for value axis strips.
*/
strips?: Array<dxPolarChartValueAxisStrips>;
/**
*
*/
tick?: dxPolarChartValueAxisTick;
/**
* Specifies an interval between axis ticks/grid lines.
*/
tickInterval?: VizTimeInterval;
/**
* Specifies the required type of the value axis.
*/
type?: 'continuous' | 'discrete' | 'logarithmic';
/**
* Indicates whether to display series with indents from axis boundaries.
*/
valueMarginsEnabled?: boolean;
/**
* Specifies the desired type of axis values.
*/
valueType?: 'datetime' | 'numeric' | 'string';
/**
* Defines the axis' displayed range. Cannot be wider than the wholeRange.
*/
visualRange?: VizRange | Array<number | string | Date>;
/**
* Specifies how the axis's visual range should behave when the PolarChart data is updated.
*/
visualRangeUpdateMode?: 'auto' | 'keep' | 'reset';
/**
* Defines the range where the axis can be zoomed.
*/
wholeRange?: VizRange | Array<number | string | Date>;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisConstantLines extends dxPolarChartCommonAxisSettingsConstantLineStyle {
/**
* Specifies whether to display the constant line behind or in front of the series.
*/
displayBehindSeries?: boolean;
/**
* Specifies whether to extend the axis to display the constant line.
*/
extendAxis?: boolean;
/**
* An object defining constant line label properties.
*/
label?: dxPolarChartValueAxisConstantLinesLabel;
/**
* Specifies a value to be displayed by a constant line.
*/
value?: number | Date | string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisConstantLinesLabel extends dxPolarChartCommonAxisSettingsConstantLineStyleLabel {
/**
* Specifies the text to be displayed in a constant line label.
*/
text?: string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisLabel extends dxPolarChartCommonAxisSettingsLabel {
/**
* Specifies the text for a hint that appears when a user hovers the mouse pointer over a label on the value axis.
*/
customizeHint?: ((axisValue: { value?: Date | number | string, valueText?: string }) => string);
/**
* Specifies a callback function that returns the text to be displayed in value axis labels.
*/
customizeText?: ((axisValue: { value?: Date | number | string, valueText?: string }) => string);
/**
* Formats a value before it is displayed in an axis label.
*/
format?: format;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisStrips extends dxPolarChartCommonAxisSettingsStripStyle {
/**
* Specifies a color for a strip.
*/
color?: string;
/**
* Specifies an end value for a strip.
*/
endValue?: number | Date | string;
/**
* An object that defines the label configuration properties of a strip.
*/
label?: dxPolarChartValueAxisStripsLabel;
/**
* Specifies a start value for a strip.
*/
startValue?: number | Date | string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisStripsLabel extends dxPolarChartCommonAxisSettingsStripStyleLabel {
/**
* Specifies the text displayed in a strip.
*/
text?: string;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartValueAxisTick extends dxPolarChartCommonAxisSettingsTick {
/**
*
*/
visible?: boolean;
}
/**
* The PolarChart is a UI component that visualizes data in a polar coordinate system.
*/
export default class dxPolarChart extends BaseChart {
constructor(element: UserDefinedElement, options?: dxPolarChartOptions)
/**
* Gets a value axis.
*/
getValueAxis(): chartAxisObject;
/**
* Resets the value axis' visual range to the data range or to the whole range if it is within the data range.
*/
resetVisualRange(): void;
}
/**
*
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartAnnotationConfig extends dxPolarChartCommonAnnotationConfig {
/**
* Specifies the annotation's name.
*/
name?: string;
}
/**
*
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartCommonAnnotationConfig extends BaseChartAnnotationConfig {
/**
* Specifies the angle between the startAngle and the radius.
*/
angle?: number;
/**
* Places an annotation at the specified distance from the center of the UI component.
*/
radius?: number;
/**
* Customizes the text and appearance of the annotation's tooltip.
*/
customizeTooltip?: ((annotation: dxPolarChartAnnotationConfig | any) => any);
/**
* Specifies a custom template for the annotation. Applies only if the type is 'custom'.
*/
template?: template | ((annotation: dxPolarChartAnnotationConfig | any, element: SVGGElement) => string | UserDefinedElement<SVGElement>);
/**
* Specifies a custom template for an annotation's tooltip.
*/
tooltipTemplate?: template | ((annotation: dxPolarChartAnnotationConfig | any, element: DxElement) => string | UserDefinedElement);
}
/**
* This section lists objects that define properties used to configure series of specific types.
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartSeriesTypes {
/**
* An object that defines configuration properties for polar chart series.
*/
CommonPolarChartSeries?: dxPolarChartSeriesTypesCommonPolarChartSeries;
/**
* An object defining a series of the area type.
*/
areapolarseries?: dxPolarChartSeriesTypesAreapolarseries;
/**
* An object defining a series of the bar type.
*/
barpolarseries?: dxPolarChartSeriesTypesBarpolarseries;
/**
* An object defining a series of the line type.
*/
linepolarseries?: dxPolarChartSeriesTypesLinepolarseries;
/**
* An object defining a series of the scatter type.
*/
scatterpolarseries?: any;
/**
* An object defining a series of the stackedBar type.
*/
stackedbarpolarseries?: dxPolarChartSeriesTypesStackedbarpolarseries;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartSeriesTypesCommonPolarChartSeries {
/**
* Specifies the data source field that provides arguments for series points.
*/
argumentField?: string;
/**
* Controls the padding and consequently the angular width of all bars in a series using relative units. Ignored if the barWidth property is set.
*/
barPadding?: number;
/**
* Specifies a fixed angular width for all bars in a series, measured in degrees. Takes precedence over the barPadding property.
*/
barWidth?: number;
/**
* An object defining the series border configuration properties.
*/
border?: {
/**
* Sets a border color for a series.
*/
color?: string,
/**
* Specifies a dash style for the borders of series points.
*/
dashStyle?: DashStyleType,
/**
* Sets border visibility for a series.
*/
visible?: boolean,
/**
* Sets a border width for a series in pixels.
*/
width?: number
};
/**
* Specifies whether or not to close the chart by joining the end point with the first point.
*/
closed?: boolean;
/**
* Specifies a series color.
*/
color?: string;
/**
* Specifies the dash style of the series' line.
*/
dashStyle?: DashStyleType;
/**
* Specifies the series elements to highlight when a series is hovered over.
*/
hoverMode?: 'allArgumentPoints' | 'allSeriesPoints' | 'excludePoints' | 'includePoints' | 'nearestPoint' | 'none' | 'onlyPoint';
/**
* An object defining configuration properties for a hovered series.
*/
hoverStyle?: {
/**
* An object defining the border properties for a hovered series.
*/
border?: {
/**
* Sets a border color for a hovered series.
*/
color?: string,
/**
* Specifies a dash style for the borders of point labels.
*/
dashStyle?: DashStyleType,
/**
* Sets a border visibility for a hovered series.
*/
visible?: boolean,
/**
* Sets a border width for a hovered series.
*/
width?: number
},
/**
* Sets a color for a series when it is hovered over.
*/
color?: string,
/**
* Specifies the dash style for the line in a hovered series.
*/
dashStyle?: DashStyleType,
/**
* Specifies the hatching properties to be applied when a series is hovered over.
*/
hatching?: {
/**
* Specifies how to apply hatching to highlight the hovered series.
*/
direction?: HatchingDirectionType,
/**
* Specifies the opacity of hatching lines.
*/
opacity?: number,
/**
* Specifies the distance between hatching lines in pixels.
*/
step?: number,
/**
* Specifies the width of hatching lines in pixels.
*/
width?: number
},
/**
* Specifies the width of a line in a hovered series.
*/
width?: number
};
/**
* Specifies whether the series should ignore null data points.
*/
ignoreEmptyPoints?: boolean;
/**
* An object defining the label configuration properties.
*/
label?: dxPolarChartSeriesTypesCommonPolarChartSeriesLabel;
/**
* Specifies how many points are acceptable to be in a series to display all labels for these points. Otherwise, the labels will not be displayed.
*/
maxLabelCount?: number;
/**
* Specifies the minimal length of a displayed bar in pixels.
*/
minBarSize?: number;
/**
* Specifies opacity for a series.
*/
opacity?: number;
/**
* An object defining configuration properties for points in line and area series.
*/
point?: dxPolarChartSeriesTypesCommonPolarChartSeriesPoint;
/**
* Specifies the series elements to highlight when the series is selected.
*/
selectionMode?: 'allArgumentPoints' | 'allSeriesPoints' | 'excludePoints' | 'includePoints' | 'none' | 'onlyPoint';
/**
* An object defining configuration properties for a selected series.
*/
selectionStyle?: {
/**
* An object defining the border properties for a selected series.
*/
border?: {
/**
* Sets a border color for a selected series.
*/
color?: string,
/**
* Specifies a dash style for the borders of point labels.
*/
dashStyle?: DashStyleType,
/**
* Sets border visibility for a selected series.
*/
visible?: boolean,
/**
* Sets a border width for a selected series.
*/
width?: number
},
/**
* Sets a color for a series when it is selected.
*/
color?: string,
/**
* Specifies the dash style for the line in a selected series.
*/
dashStyle?: DashStyleType,
/**
* Specifies the hatching properties to be applied when a series is selected.
*/
hatching?: {
/**
* Specifies how to apply hatching to highlight a selected series.
*/
direction?: HatchingDirectionType,
/**
* Specifies the opacity of hatching lines.
*/
opacity?: number,
/**
* Specifies the distance between hatching lines in pixels.
*/
step?: number,
/**
* Specifies the width of hatching lines in pixels.
*/
width?: number
},
/**
* Specifies the width of a line in a selected series.
*/
width?: number
};
/**
* Specifies whether or not to show the series in the chart's legend.
*/
showInLegend?: boolean;
/**
* Specifies the name of the stack where the values of the 'stackedBar' series must be located.
*/
stack?: string;
/**
* Specifies the name of the data source field that provides data about a point.
*/
tagField?: string;
/**
* Configures error bars.
*/
valueErrorBar?: {
/**
* Specifies the color of error bars.
*/
color?: string,
/**
* Specifies whether error bars must be displayed in full or partially.
*/
displayMode?: 'auto' | 'high' | 'low' | 'none',
/**
* Specifies the length of the lines that indicate error bar edges.
*/
edgeLength?: number,
/**
* Specifies the data field that provides data for high error values.
*/
highValueField?: string,
/**
* Specifies the width of the error bar line.
*/
lineWidth?: number,
/**
* Specifies the data field that provides data for low error values.
*/
lowValueField?: string,
/**
* Specifies the opacity of error bars.
*/
opacity?: number,
/**
* Specifies how error bar values must be calculated.
*/
type?: 'fixed' | 'percent' | 'stdDeviation' | 'stdError' | 'variance',
/**
* Specifies the value to be used for generating error bars.
*/
value?: number
};
/**
* Specifies the data source field that provides values for series points.
*/
valueField?: string;
/**
* Specifies the visibility of a series.
*/
visible?: boolean;
/**
* Specifies a line width.
*/
width?: number;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartSeriesTypesCommonPolarChartSeriesLabel {
/**
* Formats the point argument before it is displayed in the point label. To format the point value, use the format property.
*/
argumentFormat?: format;
/**
* Colors the point labels' background. The default color is inherited from the points.
*/
backgroundColor?: string;
/**
* Specifies border properties for point labels.
*/
border?: {
/**
* Specifies a border color for point labels.
*/
color?: string,
/**
* Specifies a dash style for the borders of point labels.
*/
dashStyle?: DashStyleType,
/**
* Indicates whether borders are visible in point labels.
*/
visible?: boolean,
/**
* Specifies the border width for point labels.
*/
width?: number
};
/**
* Specifies connector properties for series point labels.
*/
connector?: {
/**
* Specifies the color of label connectors.
*/
color?: string,
/**
* Indicates whether or not label connectors are visible.
*/
visible?: boolean,
/**
* Specifies the width of label connectors.
*/
width?: number
};
/**
* Specifies a callback function that returns the text to be displayed by point labels.
*/
customizeText?: ((pointInfo: any) => string);
/**
* Specifies font properties for the text displayed in point labels.
*/
font?: Font;
/**
* Formats a value before it is displayed in a point label.
*/
format?: format;
/**
* Specifies a label position in bar-like series.
*/
position?: 'inside' | 'outside';
/**
* Specifies the angle used to rotate point labels from their initial position.
*/
rotationAngle?: number;
/**
* Specifies whether or not to show a label when the point has a zero value.
*/
showForZeroValues?: boolean;
/**
* Specifies the visibility of point labels.
*/
visible?: boolean;
}
/**
* @deprecated Attention! This type is for internal purposes only. If you used it previously, please describe your scenario in the following GitHub Issue, and we will suggest a public alternative: {@link https://github.com/DevExpress/DevExtreme/issues/17885|Internal Types}.
*/
export interface dxPolarChartSeriesTypesCommonPolarChartSeriesPoint {
/**
* Specifies border properties for points in the line and area series.
*/
border?: {
/**
* Sets a border color for points in the line and area series.
*/
color?: string,
/**
* Sets border visibility for points in the line and area series.
*/
visible?: boolean,
/**
* Sets a border width for points in the line or area series.
*/
width?: number
};
/**
* Specifies the points color.
*/
color?: string;
/**
* Specifies what series points to highlight when a point is hovered over.
*/
hoverMode?: 'allArgumentPoints' | 'allSeriesPoints' | 'none' | 'onlyPoint';
/**
* An object defi