import Axis from './axis'; import Canvas from '../../renderer/canvas'; import AtomComponent from '../../atomComponent'; import { AxisOptions, AxisData } from '../../models'; import { SeriesCategory, AxisTypeEnum } from '../../constants'; export default class YAxis extends AtomComponent implements Axis { private static readonly defaultOptions; options: AxisOptions; seriesCategory: SeriesCategory; axisType: AxisTypeEnum; rawData: any[]; layoutData: any[]; constructor(chart: any, canvas: Canvas, axisdata: AxisData, options: AxisOptions); /** * 支持多y轴TODO: * 1.option解析yAxis,识别多y轴 * 2.区分单/双y轴绘制 * 3.双y轴的max 分别从data计算;并对齐; * 4.双y轴的interval划分 分别从data计算; 并对齐; */ render(): void; /** * 画坐标轴线 */ drawLine(): void; /** * 画坐标轴刻度 */ drawTick(): void; /** * 画坐标轴文本 */ drawLabel(): void; /** * 画坐标轴分隔线 */ drawSplitLine(): void; private getAxisData; private processOptions; /** * 数据预处理 */ private preProcessData; /** * 数据渲染布局 * @param data * @param axisLabel * @returns */ private makeLayoutData; /** * 数据采样 */ private sampleData; private processLayoutData; /** * xAxis全局数据处理 */ private processGlobalData; }