UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

59 lines (43 loc) 2.14 kB
import { CartesianLinearAxis } from "./linear-axis"; import { ComponentTypeEnum } from "../../interface/type"; import { LinearAxisMixin } from "../mixin/linear-axis-mixin"; import { LogScale } from "@visactor/vscale"; import { mixin } from "@visactor/vutils"; import { Factory } from "../../../core/factory"; import { registerAxis } from "../base-axis"; import { continuousTicks, LineAxis, LineAxisGrid } from "@visactor/vrender-components"; import { registerDataSetInstanceTransform } from "../../../data/register"; import { AxisEnum, GridEnum } from "../interface"; import { commonAxis } from "../../../theme/builtin/common/component/axis/common-axis"; import { axisLinear } from "../../../theme/builtin/common/component/axis/linear-axis"; import { axisX, axisY } from "../../../theme/builtin/common/component/axis/cartesian-axis"; export class CartesianLogAxis extends CartesianLinearAxis { constructor() { super(...arguments), this.type = ComponentTypeEnum.cartesianLogAxis, this._zero = !1, this._scale = new LogScale; } initScales() { var _a; super.initScales(), this._scale.base(null !== (_a = this._spec.base) && void 0 !== _a ? _a : 10), this._scale.clamp(!0, null, !1); } registerTicksTransform() { const name = `${this.type}-ticks`; return registerDataSetInstanceTransform(this._option.dataSet, name, continuousTicks), name; } transformScaleDomain() {} } CartesianLogAxis.type = ComponentTypeEnum.cartesianLogAxis, CartesianLogAxis.specKey = "axes", CartesianLogAxis.builtInTheme = { axis: commonAxis, axisLinear: axisLinear, axisX: axisX, axisY: axisY }, mixin(CartesianLogAxis, LinearAxisMixin); export const registerCartesianLogAxis = () => { Factory.registerGraphicComponent(AxisEnum.lineAxis, ((attrs, options) => new LineAxis(attrs, options))), Factory.registerGraphicComponent(GridEnum.lineAxisGrid, ((attrs, options) => new LineAxisGrid(attrs, options))), registerAxis(), Factory.registerComponent(CartesianLogAxis.type, CartesianLogAxis); }; //# sourceMappingURL=log-axis.js.map