echarts
Version:
Apache ECharts is a powerful, interactive charting and data visualization library for browser
53 lines (52 loc) • 2.87 kB
TypeScript
import SymbolDraw from '../helper/SymbolDraw.js';
import * as graphic from '../../util/graphic.js';
import { ECPolyline, ECPolygon } from './poly.js';
import ChartView from '../../view/Chart.js';
import LineSeriesModel, { LineSeriesOption } from './LineSeries.js';
import type GlobalModel from '../../model/Global.js';
import type ExtensionAPI from '../../core/ExtensionAPI.js';
import Cartesian2D from '../../coord/cartesian/Cartesian2D.js';
import Polar from '../../coord/polar/Polar.js';
import type SeriesData from '../../data/SeriesData.js';
import type { Payload, DisplayState, LabelOption } from '../../util/types.js';
import { CoordinateSystemClipArea } from '../../coord/CoordinateSystem.js';
import Model from '../../model/Model.js';
declare type PolarArea = ReturnType<Polar['getArea']>;
declare type Cartesian2DArea = ReturnType<Cartesian2D['getArea']>;
interface EndLabelAnimationRecord {
lastFrameIndex: number;
originalX?: number;
originalY?: number;
}
declare class LineView extends ChartView {
static readonly type = "line";
_symbolDraw: SymbolDraw;
_lineGroup: graphic.Group;
_coordSys: Cartesian2D | Polar;
_endLabel: graphic.Text;
_polyline: ECPolyline;
_polygon: ECPolygon;
_stackedOnPoints: ArrayLike<number>;
_points: ArrayLike<number>;
_step: LineSeriesOption['step'];
_valueOrigin: LineSeriesOption['areaStyle']['origin'];
_clipShapeForSymbol: CoordinateSystemClipArea;
_data: SeriesData;
init(): void;
render(seriesModel: LineSeriesModel, ecModel: GlobalModel, api: ExtensionAPI): void;
private packEventData;
highlight(seriesModel: LineSeriesModel, ecModel: GlobalModel, api: ExtensionAPI, payload: Payload): void;
downplay(seriesModel: LineSeriesModel, ecModel: GlobalModel, api: ExtensionAPI, payload: Payload): void;
_changePolyState(toState: DisplayState): void;
_newPolyline(points: ArrayLike<number>): ECPolyline;
_newPolygon(points: ArrayLike<number>, stackedOnPoints: ArrayLike<number>): ECPolygon;
_initSymbolLabelAnimation(data: SeriesData, coordSys: Polar | Cartesian2D, clipShape: PolarArea | Cartesian2DArea): void;
_initOrUpdateEndLabel(seriesModel: LineSeriesModel, coordSys: Cartesian2D, inheritColor: string): void;
_endLabelOnDuring(percent: number, clipRect: graphic.Rect, data: SeriesData, animationRecord: EndLabelAnimationRecord, valueAnimation: boolean, endLabelModel: Model<LabelOption>, coordSys: Cartesian2D): void;
/**
* @private
*/
_doUpdateAnimation(data: SeriesData, stackedOnPoints: ArrayLike<number>, coordSys: Cartesian2D | Polar, api: ExtensionAPI, step: LineSeriesOption['step'], valueOrigin: LineSeriesOption['areaStyle']['origin'], connectNulls: boolean): void;
remove(ecModel: GlobalModel): void;
}
export default LineView;