import { type CreateXYAxisSeriesOptions, type IColorAxis, type IRenderContext, type LabelStringFormatterType, MarkerType, type OxyColor, type OxyRect, type PlotModelSerializeOptions, type ScreenPoint, TrackerHitResult, XYAxisSeries } from '..'; /** * Represents a point in a ScatterSeries. */ export interface ScatterPoint { readonly x: number; readonly y: number; readonly size?: number; readonly value?: number; readonly tag?: any; } /** * Defines functionality to provide a ScatterPoint. */ export interface IScatterPointProvider { /** * Gets the ScatterPoint that represents the element. * @returns A ScatterPoint. */ getScatterPoint(): ScatterPoint; } export declare function isScatterPointProvider(obj: any): obj is IScatterPointProvider; export interface CreateScatterSeriesOptions extends CreateXYAxisSeriesOptions { dataFieldValue?: string; dataFieldSize?: string; dataFieldTag?: string; dataFieldX?: string; dataFieldY?: string; mapping?: (item: any) => ScatterPoint; markerFill?: OxyColor; markerSize?: number; markerStroke?: OxyColor; markerStrokeThickness?: number; markerType?: MarkerType; markerOutline?: ScreenPoint[]; labelMargin?: number; labelStringFormatter?: LabelStringFormatterType; colorAxisKey?: string; binSize?: number; points?: ScatterPoint[]; } export declare const DefaultScatterSeriesOptions: CreateScatterSeriesOptions; export declare const ExtendedDefaultScatterSeriesOptions: { dataFieldValue?: string | undefined; dataFieldSize?: string | undefined; dataFieldTag?: string | undefined; dataFieldX?: string | undefined; dataFieldY?: string | undefined; mapping?: ((item: any) => ScatterPoint) | undefined; markerFill?: string | undefined; markerSize?: number | undefined; markerStroke?: string | undefined; markerStrokeThickness?: number | undefined; markerType?: MarkerType | undefined; markerOutline?: ScreenPoint[] | undefined; labelMargin?: number | undefined; labelStringFormatter?: LabelStringFormatterType | undefined; colorAxisKey?: string | undefined; binSize?: number | undefined; points?: ScatterPoint[] | undefined; xAxisKey?: string | undefined; yAxisKey?: string | undefined; itemsSource?: any[] | undefined; background?: string | undefined; isVisible?: boolean | undefined; title?: string | undefined; legendKey?: string | undefined; seriesGroupName?: string | undefined; renderInLegend?: boolean | undefined; trackerStringFormatter?: import('..').TrackerStringFormatterType | undefined; trackerKey?: string | undefined; font?: string | undefined; fontSize?: number | undefined; fontWeight?: number | undefined; tag?: any; textColor?: string | undefined; edgeRenderingMode?: import('..').EdgeRenderingMode | undefined; toolTip?: string | undefined; selectable?: boolean | undefined; selectionMode?: import('..').SelectionMode | undefined; DefaultXYAxisSeriesOptions: CreateXYAxisSeriesOptions; }; /** * Provides a base class for scatter series. */ export declare class ScatterSeries extends XYAxisSeries { /** The default color-axis title */ private static readonly _defaultColorAxisTitle; /** The list of data points. */ private readonly _points; /** The default fill color. */ private _defaultMarkerFillColor; /** The marker fill color. If undefined, this color will be automatically set. */ markerFill: OxyColor; /** Gets or sets the custom marker outline polygon. Set MarkerType to T:MarkerType.Custom to use this. */ markerOutline?: ScreenPoint[]; /** The size of the marker (same size for all items). */ markerSize: number; /** The type of the marker. */ markerType: MarkerType; /** The marker stroke. */ markerStroke: OxyColor; /** Thickness of the marker strokes. */ markerStrokeThickness: number; /** The label formatter. The default is undefined (no labels). */ labelStringFormatter?: LabelStringFormatterType; /** The label margins. The default is 6. */ labelMargin: number; /** The size of the 'binning' feature. */ binSize: number; /** The color axis key. */ colorAxisKey?: string; /** The name of the property that specifies X coordinates in the ItemsSource elements. */ dataFieldX?: string; /** The name of the property that specifies Y coordinates in the ItemsSource elements. */ dataFieldY?: string; /** The name of the property that specifies the size in the ItemsSource elements. */ dataFieldSize?: string; /** The name of the property that specifies the tag in the ItemsSource elements. */ dataFieldTag?: string; /** The name of the property that specifies the color value in the ItemsSource elements. */ dataFieldValue?: string; /** A function that maps from elements in the ItemsSource to ScatterPoint points to be rendered. */ mapping?: (item: any) => ScatterPoint; private _colorAxis?; /** * Gets the color axis. */ get colorAxis(): IColorAxis | undefined; /** The data points from the items source. */ protected itemsSourcePoints?: ScatterPoint[]; /** The actual fill color. */ get actualMarkerFillColor(): OxyColor; /** The list of points. */ get points(): ScatterPoint[]; /** The actual points. */ get actualPoints(): ScatterPoint[]; private _minValue; /** * Gets the minimum value of the dataset. */ get minValue(): number; private _maxValue; /** * Gets the maximum value of the dataset. */ get maxValue(): number; /** * Initializes a new instance of the ScatterSeries class. * @protected */ constructor(opt?: CreateScatterSeriesOptions); getElementName(): string; /** Gets the nearest point. */ getNearestPoint(point: ScreenPoint, interpolate: boolean): TrackerHitResult | undefined; /** Render the scatter series */ render(rc: IRenderContext): Promise; /** Renders the legend symbol for the line series on the specified rendering context. */ renderLegend(rc: IRenderContext, legendBox: OxyRect): Promise; /** * Ensures that the axes of the series is defined. * @internal */ ensureAxes(): void; /** * Sets the default values. * @internal */ setDefaultValues(): void; /** * Updates the data. * @internal */ updateData(): void; /** * Updates the maximum and minimum values of the series. * @internal * */ updateMaxMin(): void; /** * Renders the point labels. * @param rc The render context. * @param clippingRect The clipping rectangle. */ protected renderPointLabels(rc: IRenderContext, clippingRect: OxyRect): Promise; /** * Updates the Max/Min limits from the values in the specified point list. * @param pts The points. */ protected internalUpdateMaxMinValue(pts: ScatterPoint[]): void; /** * Clears or creates the itemsSourcePoints list. */ protected clearItemsSourcePoints(): void; /** * Updates the points from the ItemsSource. */ private updateItemsSourcePoints; /** * Updates the itemsSourcePoints from the ItemsSource and data fields. */ protected updateFromDataFields(item: any): ScatterPoint; protected getElementDefaultValues(): any; toJSON(opt?: PlotModelSerializeOptions): any; } //# sourceMappingURL=ScatterSeries.d.ts.map