@mui/x-charts
Version:
The community edition of MUI X Charts components.
30 lines • 1.88 kB
text/typescript
import { type NumberValue } from '@mui/x-charts-vendor/d3-scale';
import { type AxisId, type ContinuousScaleName, type DefaultedAxis, type DefaultedXAxis, type DefaultedYAxis } from "../../../../models/axis.mjs";
import { type ProcessedSeries } from "../../corePlugins/useChartSeries/index.mjs";
import { type TickParams } from "../../../../hooks/useTicks.mjs";
/**
* Calculates the initial domain and tick number for a given axis.
* The domain should still run through the zoom filterMode after this step.
*/
export declare function calculateInitialDomainAndTickNumber(axis: DefaultedAxis<ContinuousScaleName>, axisDirection: 'x' | 'y', axisIndex: number, formattedSeries: ProcessedSeries, [minData, maxData]: [number | Date, number | Date], defaultTickNumber: number): {
domain: [NumberValue, NumberValue];
tickNumber: number;
};
/**
* Calculates the final domain for an axis.
* After this step, the domain can be used to create the axis scale.
*/
export declare function calculateFinalDomain(axis: Pick<DefaultedAxis<ContinuousScaleName>, 'id' | 'domainLimit' | 'scaleType'> & TickParams & {
min?: NumberValue;
max?: NumberValue;
}, axisDirection: 'x' | 'y', axisIndex: number, formattedSeries: ProcessedSeries, [minData, maxData]: [number | Date, number | Date], tickNumber: number): NumberValue[];
export interface DomainDefinition {
domain: ReadonlyArray<string | NumberValue>;
tickNumber?: number;
}
/**
* Computes the domain map for a list of axes.
* Shared between the rendering selectors and the auto-size domain selectors
* to ensure consistent domain computation logic.
*/
export declare function computeAxisDomainsMap(axes: DefaultedXAxis[] | DefaultedYAxis[] | undefined, formattedSeries: ProcessedSeries, defaultTickNumber: number, extremaMap: Record<AxisId, [number, number]>, axisDirection: 'x' | 'y'): Record<AxisId, DomainDefinition>;