@visactor/vchart
Version:
charts lib based @visactor/VGrammar
48 lines (31 loc) • 1.97 kB
JavaScript
import { SeriesTypeEnum } from "../../series/interface/type";
import { registerLineSeries } from "../../series/line/line";
import { Factory } from "../../core/factory";
import { LineChartSpecTransformer } from "./line-transformer";
import { BaseChart } from "../base";
import { StackChartMixin } from "../stack";
import { mixin } from "@visactor/vutils";
import { registerDimensionHover } from "../../interaction/triggers/dimension-hover";
import { registerDimensionEvents } from "../../event/events";
import { getCartesianDimensionInfo, getDimensionInfoByValue } from "../../event/events/dimension/util/cartesian";
import { getCartesianCrosshairRect } from "../../component/crosshair/utils/cartesian";
import { registerDimensionTooltipProcessor } from "../../component/tooltip/processor/dimension-tooltip";
import { registerMarkTooltipProcessor } from "../../component/tooltip/processor/mark-tooltip";
import { registerGroupTooltipProcessor } from "../../component/tooltip/processor/group-tooltip";
export class LineChart extends BaseChart {
constructor() {
super(...arguments), this.transformerConstructor = LineChartSpecTransformer, this.type = "line",
this.seriesType = SeriesTypeEnum.line;
}
_setModelOption() {
this._modelOption.getDimensionInfo = getCartesianDimensionInfo, this._modelOption.getDimensionInfoByValue = getDimensionInfoByValue,
this._modelOption.getRectByDimensionData = getCartesianCrosshairRect;
}
}
LineChart.type = "line", LineChart.seriesType = SeriesTypeEnum.line, LineChart.transformerConstructor = LineChartSpecTransformer,
mixin(LineChart, StackChartMixin);
export const registerLineChart = () => {
registerDimensionTooltipProcessor(), registerMarkTooltipProcessor(), registerGroupTooltipProcessor(),
registerDimensionEvents(), registerDimensionHover(), registerLineSeries(), Factory.registerChart(LineChart.type, LineChart);
};
//# sourceMappingURL=line.js.map