import { AxisOptions, AxisLayoutData, CustomAxisOptions, AxisSourceData, AxisData } from '../../models'; import { SeriesCategory } from '../../constants'; import { AxisName } from './config'; import AtomComponent from '../../atomComponent'; export default abstract class Axis extends AtomComponent { axisName: string; axisIndex: number; options: AxisOptions & CustomAxisOptions; seriesCategory: SeriesCategory; sourceData: AxisSourceData[]; layoutData: AxisLayoutData[]; constructor(chart: any, axisName: AxisName, axisdata: AxisData, options: AxisOptions, axisIndex: number); /** * 画坐标轴线 */ protected drawLine(): void; /** * 画坐标轴刻度 */ protected drawTick(): void; /** * 画坐标轴文本 */ protected drawLabel(): void; /** * 画坐标轴分隔线 */ protected drawSplitLine(): void; /** * 配置项解析 * 1.[合并]配置 2.[识别]排布方向 */ private processOptions; /** * 数据标准化 */ private preProcessData; /** * 数据采样 */ private sampleData; /** * 数据渲染布局 * @param data * @param axisLabel * @returns */ private makeLayoutData; private processLayoutData; /** * xAxis全局数据处理 */ private processGlobalData; }