UNPKG

igniteui-react-charts

Version:

Ignite UI React charting components for building rich data visualizations using TypeScript APIs.

778 lines (767 loc) 29.2 kB
import * as React from 'react'; import { IgPoint } from "igniteui-react-core"; import { IgDataTemplate } from "igniteui-react-core"; import { LabelsPosition } from "./LabelsPosition"; import { Visibility } from "igniteui-react-core"; import { LeaderLineType } from "./LeaderLineType"; import { OthersCategoryType } from "igniteui-react-core"; import { IgrIndexCollection } from "./igr-index-collection"; import { SweepDirection } from "igniteui-react-core"; import { LegendEmptyValuesMode } from "igniteui-react-core"; import { SliceSelectionMode } from "./SliceSelectionMode"; import { IgrObjectCollection } from "igniteui-react-core"; import { IgrLabelClickEventArgs } from "./igr-label-click-event-args"; import { IgrSelectedItemChangingEventArgs } from "./igr-selected-item-changing-event-args"; import { IgrSelectedItemsChangingEventArgs } from "./igr-selected-items-changing-event-args"; import { IgrSelectedItemChangedEventArgs } from "./igr-selected-item-changed-event-args"; import { IgrSelectedItemsChangedEventArgs } from "./igr-selected-items-changed-event-args"; import { IgrSliceClickEventArgs } from "./igr-slice-click-event-args"; import { IgrSliceEventArgs } from "./igr-slice-event-args"; import { PieChartBase } from "./PieChartBase"; import { ContentChildrenManager } from "igniteui-react-core"; /** * Represents the base class for the pie chart. */ export declare abstract class IgrPieChartBase<P extends IIgrPieChartBaseProps = IIgrPieChartBaseProps> extends React.Component<P, {}> { protected createImplementation(): PieChartBase; protected _implementation: any; protected mounted: boolean; get nativeElement(): HTMLElement; /** * @hidden */ get i(): PieChartBase; /** * @hidden */ static _createFromInternal(internal: any): IgrPieChartBase; protected onImplementationCreated(): void; protected _contentChildrenManager: ContentChildrenManager; constructor(props: P); componentDidMount(): void; shouldComponentUpdate(nextProps: any, nextState: any): boolean; render(): any; /** * Gets or sets the amount of space between the center and the start of the arc. This property should be set between 0 and 1. * If InnerExtent is set to a value greater than 1, it will be interpreted as a percentage, effectively divided by 100. */ get innerExtent(): number; set innerExtent(v: number); /** * Gets or Sets the property name that contains the values. */ get valueMemberPath(): string; set valueMemberPath(v: string); /** * Gets or sets the property name that contains the labels. */ get labelMemberPath(): string; set labelMemberPath(v: string); /** * Gets or sets the property name that contains the legend labels. */ get legendLabelMemberPath(): string; set legendLabelMemberPath(v: string); /** * Gets or sets the position of chart labels. */ get labelsPosition(): LabelsPosition; set labelsPosition(v: LabelsPosition); /** * Gets or sets the color for labels rendered outside of the pie chart. */ get labelOuterColor(): string; set labelOuterColor(v: string); /** * Gets or sets the color for labels rendered inside of the pie chart. */ get labelInnerColor(): string; set labelInnerColor(v: string); /** * Gets the actual color for labels rendered outside of the pie chart. */ get actualLabelOuterColor(): string; set actualLabelOuterColor(v: string); /** * Gets the actual color for labels rendered inside of the pie chart. */ get actualLabelInnerColor(): string; set actualLabelInnerColor(v: string); /** * Gets or sets whether the leader lines are visible. */ get leaderLineVisibility(): Visibility; set leaderLineVisibility(v: Visibility); /** * Gets or sets what type of leader lines will be used for the outside end labels. */ get leaderLineType(): LeaderLineType; set leaderLineType(v: LeaderLineType); /** * Gets or sets the margin between a label and the end of its leader line. The default is 6 pixels. */ get leaderLineMargin(): number; set leaderLineMargin(v: number); /** * Gets or sets the ToolTip for the chart. */ get toolTip(): any; set toolTip(v: any); /** * Gets or sets the threshold value that determines if slices are grouped into the Others slice. */ get othersCategoryThreshold(): number; set othersCategoryThreshold(v: number); /** * Gets or sets whether to use numeric or percent-based threshold value. */ get othersCategoryType(): OthersCategoryType; set othersCategoryType(v: OthersCategoryType); /** * Gets or sets the label of the Others slice. */ get othersCategoryText(): string; set othersCategoryText(v: string); /** * Determines how much the exploded slice is offset from the center. Value between 0 and 1. */ get explodedRadius(): number; set explodedRadius(v: number); /** * Gets or sets the scaling factor of the chart's radius. Value between 0 and 1. */ get radiusFactor(): number; set radiusFactor(v: number); /** * Gets or sets whether the slices can be selected. */ get allowSliceSelection(): boolean; set allowSliceSelection(v: boolean); /** * Gets or sets whether the slices can be exploded. */ get allowSliceExplosion(): boolean; set allowSliceExplosion(v: boolean); private _explodedSlices; /** * Gets or sets the collection of exploded slice indices. */ get explodedSlices(): IgrIndexCollection; set explodedSlices(v: IgrIndexCollection); /** * Gets or sets the pixel amount by which the labels are offset from the edge of the slices. */ get labelExtent(): number; set labelExtent(v: number); /** * Gets or sets the starting angle of the chart. * The default zero value is equivalent to 3 o'clock. */ get startAngle(): number; set startAngle(v: number); /** * Gets or sets the rotational direction of the chart. */ get sweepDirection(): SweepDirection; set sweepDirection(v: SweepDirection); /** * Gets or sets the fill brush. */ get othersCategoryFill(): string; set othersCategoryFill(v: string); /** * Gets or sets the stroke brush. */ get othersCategoryStroke(): string; set othersCategoryStroke(v: string); /** * Gets or sets the stroke thickness. */ get othersCategoryStrokeThickness(): number; set othersCategoryStrokeThickness(v: number); /** * Gets or sets the opacity. */ get othersCategoryOpacity(): number; set othersCategoryOpacity(v: number); ensureOthersCategoryStyle(): void; /** * Gets or sets the fill brush. */ get selectedSliceFill(): string; set selectedSliceFill(v: string); /** * Gets or sets the stroke brush. */ get selectedSliceStroke(): string; set selectedSliceStroke(v: string); /** * Gets or sets the stroke thickness. */ get selectedSliceStrokeThickness(): number; set selectedSliceStrokeThickness(v: number); /** * Gets or sets the opacity. */ get selectedSliceOpacity(): number; set selectedSliceOpacity(v: number); ensureSelectedStyle(): void; /** * Gets or sets the palette of brushes to use for coloring the slices. */ get brushes(): string[]; set brushes(v: string[]); /** * Gets the actual palette of brushes to use for coloring the slices. */ get actualBrushes(): string[]; set actualBrushes(v: string[]); /** * Gets or sets the palette of brushes to use for outlines on the slices. */ get outlines(): string[]; set outlines(v: string[]); /** * Gets the actual palette of brushes to use for outlines on the slices. */ get actualOutlines(): string[]; set actualOutlines(v: string[]); /** * Gets or sets the label format string to use for the label. */ get labelFormat(): string; set labelFormat(v: string); /** * Gets or sets the format specifiers to use with the LabelFormat string. */ get labelFormatSpecifiers(): any[]; set labelFormatSpecifiers(v: any[]); /** * Gets or sets the label format string to use for the label. */ get othersLabelFormat(): string; set othersLabelFormat(v: string); /** * Gets or sets the format specifiers to use with the OthersLabelFormat string. */ get othersLabelFormatSpecifiers(): any[]; set othersLabelFormatSpecifiers(v: any[]); /** * Gets or sets the label format string to use for the label. */ get legendLabelFormat(): string; set legendLabelFormat(v: string); /** * Gets or sets the format specifiers to use with the LegendLabelFormat string. */ get legendLabelFormatSpecifiers(): any[]; set legendLabelFormatSpecifiers(v: any[]); /** * Gets or sets the label format string to use for the label. */ get legendOthersLabelFormat(): string; set legendOthersLabelFormat(v: string); /** * Gets or sets the format specifiers to use with the LegendOthersLabelFormat string. */ get legendOthersLabelFormatSpecifiers(): any[]; set legendOthersLabelFormatSpecifiers(v: any[]); /** * Gets or sets the LegendItemTemplate property. * The legend item control content is created according to the LegendItemTemplate on-demand by * the chart object itself. */ get legendItemTemplate(): IgDataTemplate; set legendItemTemplate(v: IgDataTemplate); /** * Gets or sets the LegendItemBadgeTemplate property. * The legend item badge is created according to the LegendItemBadgeTemplate on-demand by * the chart object itself. */ get legendItemBadgeTemplate(): IgDataTemplate; set legendItemBadgeTemplate(v: IgDataTemplate); /** * Gets or sets whether the pie chart will handle drag interaction and make them avaiilable in its events. */ get isDragInteractionEnabled(): boolean; set isDragInteractionEnabled(v: boolean); /** * Gets or sets whether all surface interactions with the plot area should be disabled. */ get isSurfaceInteractionDisabled(): boolean; set isSurfaceInteractionDisabled(v: boolean); /** * Gets or sets whether the pie chart should display mock data when data isn't present. */ get shouldDisplayMockData(): boolean; set shouldDisplayMockData(v: boolean); /** * Gets or sets whether the pie chart should use a skeleton style for mock data. */ get shouldUseSkeletonStyleForMockData(): boolean; set shouldUseSkeletonStyleForMockData(v: boolean); /** * Determines display mode for zero values in the legend. * For example, handling zero values as valid slices and providing them with proper appearance settings. */ get legendEmptyValuesMode(): LegendEmptyValuesMode; set legendEmptyValuesMode(v: LegendEmptyValuesMode); /** * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart. */ get formatLabel(): (obj: any) => string; set formatLabel(v: (obj: any) => string); /** * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart's legend. */ get formatLegendLabel(): (obj: any) => string; set formatLegendLabel(v: (obj: any) => string); /** * Gets or sets the scaling value used to affect the pixel density of the control. * A higher scaling ratio will produce crisper visuals at the expense of memory. Lower values will cause the control * to appear blurry. */ get pixelScalingRatio(): number; set pixelScalingRatio(v: number); /** * Resolved pixel scaling ratio. Unless explicitly overridden by the * PieChartBase.PixelScalingRatio property, * this one returns the default ratio enforced by device. High resolution devices will initialize this property * to a higher value. */ get actualPixelScalingRatio(): number; set actualPixelScalingRatio(v: number); /** * Gets or sets which mode to use for selecting slices. */ get selectionMode(): SliceSelectionMode; set selectionMode(v: SliceSelectionMode); /** * Gets or sets the currently selected data item. If a different data item is provided the pie chart * will select the slice associated with the new item. */ get selectedItem(): any; set selectedItem(v: any); private _selectedItems; /** * Gets the currently selected data items. Adding or removing data items from this collection will * select or deselect the slices associated with those items. */ get selectedItems(): IgrObjectCollection; set selectedItems(v: IgrObjectCollection); /** * Manually overrides the style to use for the labels. */ get textStyle(): string; set textStyle(v: string); findByName(name: string): any; protected __p: string; protected _hasUserValues: Set<string>; protected get hasUserValues(): Set<string>; protected __m(propertyName: string): void; protected _stylingContainer: any; protected _stylingParent: any; protected _inStyling: boolean; protected _styling(container: any, component: any, parent?: any): void; /** * Use to force the pie chart to finish any deferred work before printing or evaluating its visual. * This should only be called if the visual of the pie chart needs to be synchronously saved or evaluated. * Calling this method too often will hinder the performance of the pie chart. */ flush(): void; /** * Returns the chart visuals expressed as a serialized string. */ exportSerializedVisualData(): string; /** * Simulates a mouse click action at the specified point. * @param point * The point to click at. */ simulateLeftClick(point: IgPoint): void; /** * Invoked by the containing object to provide reference to the container. * @param container * Reference to the container. */ provideContainer(container: any): void; /** * Notification from the containing object that the container has been resized. */ notifyContainerResized(): void; /** * Invoked when the instance is being destroyed. */ destroy(): void; notifySetItem(source_: any, index: number, oldItem: any, newItem: any): void; /** * Manually notifies the pie chart's data source that the data it has bound to has been cleared and needs to be re-examined. * This should not be called if the data that the pie chart is bound to is already observable. * @param source_ * The data source. */ notifyClearItems(source_: any): void; notifyInsertItem(source_: any, index: number, newItem: any): void; notifyRemoveItem(source_: any, index: number, oldItem: any): void; /** * Assigns data source for the items. * @param source_ * Array of the data source items. */ setWidgetLevelDataSource(source_: any): void; /** * Resets items data source. */ removeWidgetLevelDataSource(): void; /** * Invoked when style is updated. */ styleUpdated(): void; private _labelClick; private _labelClick_wrapped; /** * Raised when the slice's label is clicked. */ get labelClick(): (s: IgrPieChartBase, e: IgrLabelClickEventArgs) => void; set labelClick(ev: (s: IgrPieChartBase, e: IgrLabelClickEventArgs) => void); private _selectedItemChanging; private _selectedItemChanging_wrapped; /** * Raised when the SelectedItem property is changing. This event is cancelable. */ get selectedItemChanging(): (s: IgrPieChartBase, e: IgrSelectedItemChangingEventArgs) => void; set selectedItemChanging(ev: (s: IgrPieChartBase, e: IgrSelectedItemChangingEventArgs) => void); private _selectedItemsChanging; private _selectedItemsChanging_wrapped; /** * Raised when the SelectedItems collection is changing. This event is cancelable. */ get selectedItemsChanging(): (s: IgrPieChartBase, e: IgrSelectedItemsChangingEventArgs) => void; set selectedItemsChanging(ev: (s: IgrPieChartBase, e: IgrSelectedItemsChangingEventArgs) => void); private _selectedItemChanged; private _selectedItemChanged_wrapped; /** * Raised when the SelectedItem property has changed. */ get selectedItemChanged(): (s: IgrPieChartBase, e: IgrSelectedItemChangedEventArgs) => void; set selectedItemChanged(ev: (s: IgrPieChartBase, e: IgrSelectedItemChangedEventArgs) => void); private _selectedItemsChanged; private _selectedItemsChanged_wrapped; /** * Raised when the SelectedItems collection has changed. */ get selectedItemsChanged(): (s: IgrPieChartBase, e: IgrSelectedItemsChangedEventArgs) => void; set selectedItemsChanged(ev: (s: IgrPieChartBase, e: IgrSelectedItemsChangedEventArgs) => void); private _sliceClick; private _sliceClick_wrapped; /** * Raised when the slice is clicked. */ get sliceClick(): (s: IgrPieChartBase, e: IgrSliceClickEventArgs) => void; set sliceClick(ev: (s: IgrPieChartBase, e: IgrSliceClickEventArgs) => void); private _sliceEnter; private _sliceEnter_wrapped; /** * Raised when a slice is entered by the pointer. */ get sliceEnter(): (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; set sliceEnter(ev: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void); private _sliceLeave; private _sliceLeave_wrapped; /** * Raised when a slice is left by the pointer; */ get sliceLeave(): (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; set sliceLeave(ev: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void); private _sliceHover; private _sliceHover_wrapped; /** * Raised when a pointer moves over a slice. */ get sliceHover(): (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; set sliceHover(ev: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void); } export interface IIgrPieChartBaseProps { children?: React.ReactNode; /** * Gets or sets the amount of space between the center and the start of the arc. This property should be set between 0 and 1. * If InnerExtent is set to a value greater than 1, it will be interpreted as a percentage, effectively divided by 100. */ innerExtent?: number | string; /** * Gets or Sets the property name that contains the values. */ valueMemberPath?: string; /** * Gets or sets the property name that contains the labels. */ labelMemberPath?: string; /** * Gets or sets the property name that contains the legend labels. */ legendLabelMemberPath?: string; /** * Gets or sets the position of chart labels. */ labelsPosition?: LabelsPosition | string; /** * Gets or sets the color for labels rendered outside of the pie chart. */ labelOuterColor?: string; /** * Gets or sets the color for labels rendered inside of the pie chart. */ labelInnerColor?: string; /** * Gets the actual color for labels rendered outside of the pie chart. */ actualLabelOuterColor?: string; /** * Gets the actual color for labels rendered inside of the pie chart. */ actualLabelInnerColor?: string; /** * Gets or sets whether the leader lines are visible. */ leaderLineVisibility?: Visibility | string; /** * Gets or sets what type of leader lines will be used for the outside end labels. */ leaderLineType?: LeaderLineType | string; /** * Gets or sets the margin between a label and the end of its leader line. The default is 6 pixels. */ leaderLineMargin?: number | string; /** * Gets or sets the ToolTip for the chart. */ toolTip?: any; /** * Gets or sets the threshold value that determines if slices are grouped into the Others slice. */ othersCategoryThreshold?: number | string; /** * Gets or sets whether to use numeric or percent-based threshold value. */ othersCategoryType?: OthersCategoryType | string; /** * Gets or sets the label of the Others slice. */ othersCategoryText?: string; /** * Determines how much the exploded slice is offset from the center. Value between 0 and 1. */ explodedRadius?: number | string; /** * Gets or sets the scaling factor of the chart's radius. Value between 0 and 1. */ radiusFactor?: number | string; /** * Gets or sets whether the slices can be selected. */ allowSliceSelection?: boolean | string; /** * Gets or sets whether the slices can be exploded. */ allowSliceExplosion?: boolean | string; /** * Gets or sets the collection of exploded slice indices. */ explodedSlices?: IgrIndexCollection | string; /** * Gets or sets the pixel amount by which the labels are offset from the edge of the slices. */ labelExtent?: number | string; /** * Gets or sets the starting angle of the chart. * The default zero value is equivalent to 3 o'clock. */ startAngle?: number | string; /** * Gets or sets the rotational direction of the chart. */ sweepDirection?: SweepDirection | string; /** * Gets or sets the fill brush. */ othersCategoryFill?: string; /** * Gets or sets the stroke brush. */ othersCategoryStroke?: string; /** * Gets or sets the stroke thickness. */ othersCategoryStrokeThickness?: number | string; /** * Gets or sets the opacity. */ othersCategoryOpacity?: number | string; /** * Gets or sets the fill brush. */ selectedSliceFill?: string; /** * Gets or sets the stroke brush. */ selectedSliceStroke?: string; /** * Gets or sets the stroke thickness. */ selectedSliceStrokeThickness?: number | string; /** * Gets or sets the opacity. */ selectedSliceOpacity?: number | string; /** * Gets or sets the palette of brushes to use for coloring the slices. */ brushes?: string[] | string; /** * Gets the actual palette of brushes to use for coloring the slices. */ actualBrushes?: string[] | string; /** * Gets or sets the palette of brushes to use for outlines on the slices. */ outlines?: string[] | string; /** * Gets the actual palette of brushes to use for outlines on the slices. */ actualOutlines?: string[] | string; /** * Gets or sets the label format string to use for the label. */ labelFormat?: string; /** * Gets or sets the format specifiers to use with the LabelFormat string. */ labelFormatSpecifiers?: any[]; /** * Gets or sets the label format string to use for the label. */ othersLabelFormat?: string; /** * Gets or sets the format specifiers to use with the OthersLabelFormat string. */ othersLabelFormatSpecifiers?: any[]; /** * Gets or sets the label format string to use for the label. */ legendLabelFormat?: string; /** * Gets or sets the format specifiers to use with the LegendLabelFormat string. */ legendLabelFormatSpecifiers?: any[]; /** * Gets or sets the label format string to use for the label. */ legendOthersLabelFormat?: string; /** * Gets or sets the format specifiers to use with the LegendOthersLabelFormat string. */ legendOthersLabelFormatSpecifiers?: any[]; /** * Gets or sets the LegendItemTemplate property. * The legend item control content is created according to the LegendItemTemplate on-demand by * the chart object itself. */ legendItemTemplate?: IgDataTemplate; /** * Gets or sets the LegendItemBadgeTemplate property. * The legend item badge is created according to the LegendItemBadgeTemplate on-demand by * the chart object itself. */ legendItemBadgeTemplate?: IgDataTemplate; /** * Gets or sets whether the pie chart will handle drag interaction and make them avaiilable in its events. */ isDragInteractionEnabled?: boolean | string; /** * Gets or sets whether all surface interactions with the plot area should be disabled. */ isSurfaceInteractionDisabled?: boolean | string; /** * Gets or sets whether the pie chart should display mock data when data isn't present. */ shouldDisplayMockData?: boolean | string; /** * Gets or sets whether the pie chart should use a skeleton style for mock data. */ shouldUseSkeletonStyleForMockData?: boolean | string; /** * Determines display mode for zero values in the legend. * For example, handling zero values as valid slices and providing them with proper appearance settings. */ legendEmptyValuesMode?: LegendEmptyValuesMode | string; /** * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart. */ formatLabel?: (obj: any) => string; /** * Sets or gets a function which takes an object that produces a formatted label for displaying in the chart's legend. */ formatLegendLabel?: (obj: any) => string; /** * Gets or sets the scaling value used to affect the pixel density of the control. * A higher scaling ratio will produce crisper visuals at the expense of memory. Lower values will cause the control * to appear blurry. */ pixelScalingRatio?: number | string; /** * Resolved pixel scaling ratio. Unless explicitly overridden by the * PieChartBase.PixelScalingRatio property, * this one returns the default ratio enforced by device. High resolution devices will initialize this property * to a higher value. */ actualPixelScalingRatio?: number | string; /** * Gets or sets which mode to use for selecting slices. */ selectionMode?: SliceSelectionMode | string; /** * Gets or sets the currently selected data item. If a different data item is provided the pie chart * will select the slice associated with the new item. */ selectedItem?: any; /** * Gets the currently selected data items. Adding or removing data items from this collection will * select or deselect the slices associated with those items. */ selectedItems?: IgrObjectCollection | string; /** * Manually overrides the style to use for the labels. */ textStyle?: string; /** * Raised when the slice's label is clicked. */ labelClick?: (s: IgrPieChartBase, e: IgrLabelClickEventArgs) => void; /** * Raised when the SelectedItem property is changing. This event is cancelable. */ selectedItemChanging?: (s: IgrPieChartBase, e: IgrSelectedItemChangingEventArgs) => void; /** * Raised when the SelectedItems collection is changing. This event is cancelable. */ selectedItemsChanging?: (s: IgrPieChartBase, e: IgrSelectedItemsChangingEventArgs) => void; /** * Raised when the SelectedItem property has changed. */ selectedItemChanged?: (s: IgrPieChartBase, e: IgrSelectedItemChangedEventArgs) => void; /** * Raised when the SelectedItems collection has changed. */ selectedItemsChanged?: (s: IgrPieChartBase, e: IgrSelectedItemsChangedEventArgs) => void; /** * Raised when the slice is clicked. */ sliceClick?: (s: IgrPieChartBase, e: IgrSliceClickEventArgs) => void; /** * Raised when a slice is entered by the pointer. */ sliceEnter?: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; /** * Raised when a slice is left by the pointer; */ sliceLeave?: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; /** * Raised when a pointer moves over a slice. */ sliceHover?: (s: IgrPieChartBase, e: IgrSliceEventArgs) => void; }