@visactor/vchart 1.8.6 → 1.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/es5/index.js +1 -1
- package/build/index.js +5838 -5590
- package/build/index.min.js +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/chart/base/base-chart.js +1 -1
- package/cjs/chart/base/base-chart.js.map +1 -1
- package/cjs/chart/range-column/range-column-transformer.js +2 -1
- package/cjs/chart/range-column/range-column-transformer.js.map +1 -1
- package/cjs/component/axis/cartesian/axis.js +2 -2
- package/cjs/component/axis/cartesian/axis.js.map +1 -1
- package/cjs/component/axis/polar/axis.js +2 -2
- package/cjs/component/axis/polar/axis.js.map +1 -1
- package/cjs/component/brush/brush.d.ts +1 -1
- package/cjs/component/brush/brush.js +10 -10
- package/cjs/component/brush/brush.js.map +1 -1
- package/cjs/component/crosshair/base.js +4 -4
- package/cjs/component/crosshair/base.js.map +1 -1
- package/cjs/component/crosshair/cartesian.js +1 -1
- package/cjs/component/crosshair/cartesian.js.map +1 -1
- package/cjs/component/data-zoom/data-filter-base-component.js +1 -1
- package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/cjs/component/geo/geo-coordinate.js +1 -1
- package/cjs/component/geo/geo-coordinate.js.map +1 -1
- package/cjs/component/indicator/indicator.js +2 -2
- package/cjs/component/indicator/indicator.js.map +1 -1
- package/cjs/component/legend/base-legend.js +1 -1
- package/cjs/component/legend/base-legend.js.map +1 -1
- package/cjs/component/legend/continuous/legend.js +1 -1
- package/cjs/component/legend/continuous/legend.js.map +1 -1
- package/cjs/component/legend/discrete/legend.d.ts +1 -0
- package/cjs/component/legend/discrete/legend.js +5 -2
- package/cjs/component/legend/discrete/legend.js.map +1 -1
- package/cjs/component/map-label/component.js +3 -3
- package/cjs/component/map-label/component.js.map +1 -1
- package/cjs/component/marker/mark-line/mark-line.js +3 -3
- package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
- package/cjs/component/marker/mark-point/interface/theme.d.ts +1 -0
- package/cjs/component/marker/mark-point/interface/theme.js.map +1 -1
- package/cjs/component/marker/mark-point/mark-point.js +4 -4
- package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
- package/cjs/component/marker/utils.js +8 -9
- package/cjs/component/marker/utils.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/shape-model.js +4 -0
- package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/title-model.js +7 -3
- package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
- package/cjs/component/tooltip/utils/show-tooltip.js +3 -2
- package/cjs/component/tooltip/utils/show-tooltip.js.map +1 -1
- package/cjs/core/index.d.ts +1 -1
- package/cjs/core/index.js +1 -1
- package/cjs/core/index.js.map +1 -1
- package/cjs/core/vchart.js +1 -1
- package/cjs/core/vchart.js.map +1 -1
- package/cjs/data/transforms/dimension-statistics.js +1 -1
- package/cjs/data/transforms/dimension-statistics.js.map +1 -1
- package/cjs/event/events/dimension/dimension-click.js +1 -1
- package/cjs/event/events/dimension/dimension-click.js.map +1 -1
- package/cjs/event/events/dimension/dimension-hover.js +4 -4
- package/cjs/event/events/dimension/dimension-hover.js.map +1 -1
- package/cjs/interaction/trigger.js +1 -1
- package/cjs/interaction/trigger.js.map +1 -1
- package/cjs/layout/base-layout.js +7 -7
- package/cjs/layout/base-layout.js.map +1 -1
- package/cjs/layout/interface.d.ts +4 -1
- package/cjs/layout/interface.js.map +1 -1
- package/cjs/layout/layout-item.d.ts +5 -1
- package/cjs/layout/layout-item.js +24 -4
- package/cjs/layout/layout-item.js.map +1 -1
- package/cjs/layout/layout3d/index.js +4 -4
- package/cjs/layout/layout3d/index.js.map +1 -1
- package/cjs/mark/mark-set/index.js +1 -1
- package/cjs/mark/mark-set/index.js.map +1 -1
- package/cjs/model/interface.d.ts +2 -0
- package/cjs/model/interface.js.map +1 -1
- package/cjs/model/layout-model.d.ts +8 -0
- package/cjs/model/layout-model.js +15 -0
- package/cjs/model/layout-model.js.map +1 -1
- package/cjs/plugin/components/axis-sync-plugin/zero-align-transform.js +1 -1
- package/cjs/plugin/components/axis-sync-plugin/zero-align-transform.js.map +1 -1
- package/cjs/scale/global-scale.js +1 -1
- package/cjs/scale/global-scale.js.map +1 -1
- package/cjs/series/area/area.js +9 -6
- package/cjs/series/area/area.js.map +1 -1
- package/cjs/series/bar/bar.d.ts +4 -0
- package/cjs/series/bar/bar.js +32 -21
- package/cjs/series/bar/bar.js.map +1 -1
- package/cjs/series/base/base-series.js +7 -4
- package/cjs/series/base/base-series.js.map +1 -1
- package/cjs/series/base/constant.d.ts +4 -0
- package/cjs/series/base/constant.js +4 -3
- package/cjs/series/base/constant.js.map +1 -1
- package/cjs/series/cartesian/cartesian.js +2 -4
- package/cjs/series/cartesian/cartesian.js.map +1 -1
- package/cjs/series/correlation/correlation.js +1 -1
- package/cjs/series/correlation/correlation.js.map +1 -1
- package/cjs/series/gauge/gauge.js +1 -1
- package/cjs/series/gauge/gauge.js.map +1 -1
- package/cjs/series/line/line.js +8 -5
- package/cjs/series/line/line.js.map +1 -1
- package/cjs/series/mixin/line-mixin.js +1 -1
- package/cjs/series/mixin/line-mixin.js.map +1 -1
- package/cjs/series/pie/3d/pie-3d.js +1 -1
- package/cjs/series/pie/3d/pie-3d.js.map +1 -1
- package/cjs/series/pie/pie.js +9 -9
- package/cjs/series/pie/pie.js.map +1 -1
- package/cjs/series/polar/polar.d.ts +2 -0
- package/cjs/series/polar/polar.js +1 -1
- package/cjs/series/polar/polar.js.map +1 -1
- package/cjs/series/polar/progress-like/progress-like.js +4 -3
- package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
- package/cjs/series/polar/rose-like/rose-like.js +4 -3
- package/cjs/series/polar/rose-like/rose-like.js.map +1 -1
- package/cjs/series/range-column/range-column.d.ts +5 -1
- package/cjs/series/range-column/range-column.js +22 -25
- package/cjs/series/range-column/range-column.js.map +1 -1
- package/cjs/series/sankey/sankey.js +1 -1
- package/cjs/series/sankey/sankey.js.map +1 -1
- package/cjs/series/scatter/scatter.js +3 -3
- package/cjs/series/scatter/scatter.js.map +1 -1
- package/cjs/series/sunburst/sunburst.js +2 -2
- package/cjs/series/sunburst/sunburst.js.map +1 -1
- package/cjs/series/util/stack.js +1 -1
- package/cjs/series/util/stack.js.map +1 -1
- package/cjs/series/word-cloud/base.d.ts +2 -2
- package/cjs/series/word-cloud/base.js +7 -7
- package/cjs/series/word-cloud/base.js.map +1 -1
- package/cjs/series/word-cloud/interface.d.ts +1 -1
- package/cjs/series/word-cloud/interface.js.map +1 -1
- package/esm/chart/base/base-chart.js +1 -1
- package/esm/chart/base/base-chart.js.map +1 -1
- package/esm/chart/range-column/range-column-transformer.js +2 -1
- package/esm/chart/range-column/range-column-transformer.js.map +1 -1
- package/esm/component/axis/cartesian/axis.js +2 -2
- package/esm/component/axis/cartesian/axis.js.map +1 -1
- package/esm/component/axis/polar/axis.js +2 -2
- package/esm/component/axis/polar/axis.js.map +1 -1
- package/esm/component/brush/brush.d.ts +1 -1
- package/esm/component/brush/brush.js +10 -10
- package/esm/component/brush/brush.js.map +1 -1
- package/esm/component/crosshair/base.js +4 -4
- package/esm/component/crosshair/base.js.map +1 -1
- package/esm/component/crosshair/cartesian.js +1 -1
- package/esm/component/crosshair/cartesian.js.map +1 -1
- package/esm/component/data-zoom/data-filter-base-component.js +1 -1
- package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/esm/component/geo/geo-coordinate.js +1 -1
- package/esm/component/geo/geo-coordinate.js.map +1 -1
- package/esm/component/indicator/indicator.js +2 -2
- package/esm/component/indicator/indicator.js.map +1 -1
- package/esm/component/legend/base-legend.js +1 -1
- package/esm/component/legend/base-legend.js.map +1 -1
- package/esm/component/legend/continuous/legend.js +1 -1
- package/esm/component/legend/continuous/legend.js.map +1 -1
- package/esm/component/legend/discrete/legend.d.ts +1 -0
- package/esm/component/legend/discrete/legend.js +5 -2
- package/esm/component/legend/discrete/legend.js.map +1 -1
- package/esm/component/map-label/component.js +3 -3
- package/esm/component/map-label/component.js.map +1 -1
- package/esm/component/marker/mark-line/mark-line.js +3 -3
- package/esm/component/marker/mark-line/mark-line.js.map +1 -1
- package/esm/component/marker/mark-point/interface/theme.d.ts +1 -0
- package/esm/component/marker/mark-point/interface/theme.js.map +1 -1
- package/esm/component/marker/mark-point/mark-point.js +4 -4
- package/esm/component/marker/mark-point/mark-point.js.map +1 -1
- package/esm/component/marker/utils.js +8 -9
- package/esm/component/marker/utils.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/shape-model.js +4 -0
- package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/title-model.js +7 -3
- package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
- package/esm/component/tooltip/utils/show-tooltip.js +3 -2
- package/esm/component/tooltip/utils/show-tooltip.js.map +1 -1
- package/esm/core/index.d.ts +1 -1
- package/esm/core/index.js +1 -1
- package/esm/core/index.js.map +1 -1
- package/esm/core/vchart.js +1 -1
- package/esm/core/vchart.js.map +1 -1
- package/esm/data/transforms/dimension-statistics.js +1 -1
- package/esm/data/transforms/dimension-statistics.js.map +1 -1
- package/esm/event/events/dimension/dimension-click.js +1 -1
- package/esm/event/events/dimension/dimension-click.js.map +1 -1
- package/esm/event/events/dimension/dimension-hover.js +4 -4
- package/esm/event/events/dimension/dimension-hover.js.map +1 -1
- package/esm/interaction/trigger.js +1 -1
- package/esm/interaction/trigger.js.map +1 -1
- package/esm/layout/base-layout.js +7 -7
- package/esm/layout/base-layout.js.map +1 -1
- package/esm/layout/interface.d.ts +4 -1
- package/esm/layout/interface.js.map +1 -1
- package/esm/layout/layout-item.d.ts +5 -1
- package/esm/layout/layout-item.js +23 -4
- package/esm/layout/layout-item.js.map +1 -1
- package/esm/layout/layout3d/index.js +4 -4
- package/esm/layout/layout3d/index.js.map +1 -1
- package/esm/mark/mark-set/index.js +1 -1
- package/esm/mark/mark-set/index.js.map +1 -1
- package/esm/model/interface.d.ts +2 -0
- package/esm/model/interface.js.map +1 -1
- package/esm/model/layout-model.d.ts +8 -0
- package/esm/model/layout-model.js +15 -0
- package/esm/model/layout-model.js.map +1 -1
- package/esm/plugin/components/axis-sync-plugin/zero-align-transform.js +1 -1
- package/esm/plugin/components/axis-sync-plugin/zero-align-transform.js.map +1 -1
- package/esm/scale/global-scale.js +1 -1
- package/esm/scale/global-scale.js.map +1 -1
- package/esm/series/area/area.js +9 -4
- package/esm/series/area/area.js.map +1 -1
- package/esm/series/bar/bar.d.ts +4 -0
- package/esm/series/bar/bar.js +25 -15
- package/esm/series/bar/bar.js.map +1 -1
- package/esm/series/base/base-series.js +7 -4
- package/esm/series/base/base-series.js.map +1 -1
- package/esm/series/base/constant.d.ts +4 -0
- package/esm/series/base/constant.js +10 -0
- package/esm/series/base/constant.js.map +1 -1
- package/esm/series/cartesian/cartesian.js +2 -3
- package/esm/series/cartesian/cartesian.js.map +1 -1
- package/esm/series/correlation/correlation.js +1 -1
- package/esm/series/correlation/correlation.js.map +1 -1
- package/esm/series/gauge/gauge.js +1 -1
- package/esm/series/gauge/gauge.js.map +1 -1
- package/esm/series/line/line.js +8 -3
- package/esm/series/line/line.js.map +1 -1
- package/esm/series/mixin/line-mixin.js +1 -1
- package/esm/series/mixin/line-mixin.js.map +1 -1
- package/esm/series/pie/3d/pie-3d.js +1 -1
- package/esm/series/pie/3d/pie-3d.js.map +1 -1
- package/esm/series/pie/pie.js +9 -9
- package/esm/series/pie/pie.js.map +1 -1
- package/esm/series/polar/polar.d.ts +2 -0
- package/esm/series/polar/polar.js +1 -1
- package/esm/series/polar/polar.js.map +1 -1
- package/esm/series/polar/progress-like/progress-like.js +4 -3
- package/esm/series/polar/progress-like/progress-like.js.map +1 -1
- package/esm/series/polar/rose-like/rose-like.js +4 -3
- package/esm/series/polar/rose-like/rose-like.js.map +1 -1
- package/esm/series/range-column/range-column.d.ts +5 -1
- package/esm/series/range-column/range-column.js +21 -27
- package/esm/series/range-column/range-column.js.map +1 -1
- package/esm/series/sankey/sankey.js +1 -1
- package/esm/series/sankey/sankey.js.map +1 -1
- package/esm/series/scatter/scatter.js +4 -2
- package/esm/series/scatter/scatter.js.map +1 -1
- package/esm/series/sunburst/sunburst.js +2 -2
- package/esm/series/sunburst/sunburst.js.map +1 -1
- package/esm/series/util/stack.js +1 -1
- package/esm/series/util/stack.js.map +1 -1
- package/esm/series/word-cloud/base.d.ts +2 -2
- package/esm/series/word-cloud/base.js +7 -7
- package/esm/series/word-cloud/base.js.map +1 -1
- package/esm/series/word-cloud/interface.d.ts +1 -1
- package/esm/series/word-cloud/interface.js.map +1 -1
- package/package.json +22 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/correlation/correlation.ts"],"names":[],"mappings":"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","file":"correlation.js","sourcesContent":["import { PolarSeries } from '../polar/polar';\nimport type { ICorrelationSeriesSpec } from './interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { SeriesMarkMap } from '../interface';\nimport { correlationSeriesMark } from './constant';\nimport type { ISymbolMark } from '../../mark/symbol';\nimport { registerDataSetInstanceTransform, registerDataSetInstanceParser } from '../../data/register';\nimport { correlation } from '../../data/transforms/correlation';\nimport { correlationCenter } from '../../data/transforms/correlation-center';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ICorrelationOpt } from '../../data/transforms/correlation';\nimport type { IBounds } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { Bounds, isValid } from '@visactor/vutils';\nimport { registerSymbolMark } from '../../mark/symbol';\nimport { SeriesData } from '../base/series-data';\nimport type { Maybe, Datum, ISymbolMarkSpec, IRippleMarkSpec, AdaptiveSpec } from '../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ICorrelationSeriesTheme } from './interface';\nimport { AttributeLevel, DEFAULT_DATA_INDEX, LayoutZIndex } from '../../constant';\nimport { DataView, DataSet, dataViewParser } from '@visactor/vdataset';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport type { IRippleMark } from '../../mark/ripple';\nimport { registerRippleMark } from '../../mark/ripple';\n// eslint-disable-next-line no-duplicate-imports\nimport { RippleMark } from '../../mark/ripple';\nimport type { ILabelMark } from '../../mark/label';\n// eslint-disable-next-line no-duplicate-imports\nimport { CORRELATION_X, CORRELATION_Y, CORRELATION_SIZE } from '../../constant';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { Factory } from '../../core/factory';\nimport { registerCorrelationAnimation, type CorrelationAppearPreset } from './animation';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IMark } from '../../mark/interface';\nimport { CorrelationSeriesSpecTransformer } from './correlation-transformer';\n\nexport class CorrelationSeries<T extends ICorrelationSeriesSpec = ICorrelationSeriesSpec> extends PolarSeries<\n AdaptiveSpec<T, 'outerRadius' | 'innerRadius'>\n> {\n static readonly type: string = SeriesTypeEnum.correlation;\n type = SeriesTypeEnum.correlation;\n\n static readonly mark: SeriesMarkMap = correlationSeriesMark;\n static readonly transformerConstructor = CorrelationSeriesSpecTransformer as any;\n readonly transformerConstructor = CorrelationSeriesSpecTransformer;\n\n protected _centerSeriesData: SeriesData;\n\n private _nodePointMark: ISymbolMark;\n private _ripplePointMark: IRippleMark;\n private _centerPointMark: ISymbolMark;\n\n private _viewBox: IBounds = new Bounds();\n\n protected _categoryField!: string;\n getCategoryField() {\n return this._categoryField;\n }\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n protected _valueField!: string;\n getValueField() {\n return this._valueField;\n }\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n protected _seriesField?: string;\n getSeriesField() {\n return this._seriesField;\n }\n setSeriesField(field: string) {\n if (isValid(field)) {\n this._seriesField = field;\n }\n }\n\n protected _sizeField?: ICorrelationSeriesSpec['sizeField'];\n getSizeField() {\n return this._sizeField;\n }\n setSizeField(field: string) {\n if (isValid(field)) {\n this._sizeField = field;\n }\n }\n\n protected _sizeRange?: ICorrelationSeriesSpec['sizeRange'];\n getSizeRange() {\n return this._sizeRange;\n }\n setSizeRange(range: number[]) {\n if (isValid(range)) {\n this._sizeRange = range;\n }\n }\n\n protected _viewDataTransform!: SeriesData;\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n\n this.setSeriesField(this._spec.seriesField);\n this.setSizeField(this._spec.sizeField);\n this.setSizeRange(this._spec.sizeRange);\n }\n\n protected initData() {\n super.initData();\n\n if (!this._data) {\n return;\n }\n\n registerDataSetInstanceTransform(this._dataSet, 'correlation', correlation);\n\n const centerDataSet = new DataSet();\n registerDataSetInstanceParser(centerDataSet, 'dataview', dataViewParser);\n registerDataSetInstanceTransform(centerDataSet, 'correlationCenter', correlationCenter);\n const centerDataView = new DataView(centerDataSet, { name: `${this.type}_${this.id}_center` });\n centerDataView.parse([this.getViewData()], {\n type: 'dataview'\n });\n centerDataView.transform({\n type: 'correlationCenter',\n options: {\n keyword: this._spec.centerLabel?.style?.text ?? '',\n categoryField: this._spec.categoryField\n }\n });\n\n this._centerSeriesData = new SeriesData(this._option, centerDataView);\n }\n\n protected _statisticViewData(): void {\n super._statisticViewData();\n this._data.getDataView().transform({\n type: 'correlation',\n options: {\n view: () => {\n return {\n x0: this._viewBox.x1,\n x1: this._viewBox.x2,\n y0: this._viewBox.y1,\n y1: this._viewBox.y2\n };\n },\n field: this._spec.valueField,\n radiusRange: this._spec.sizeRange as [number, number],\n radiusField: this._spec.sizeField,\n center: [this._spec.centerX, this._spec.centerY],\n innerRadius: this._spec.innerRadius,\n outerRadius: this._spec.outerRadius,\n startAngle: this._spec.startAngle,\n endAngle: this._spec.endAngle\n } as ICorrelationOpt\n });\n }\n\n initMark(): void {\n const nodePointMark = this._createMark(CorrelationSeries.mark.nodePoint, {\n groupKey: this._seriesField,\n isSeriesMark: true,\n key: DEFAULT_DATA_INDEX,\n customShape: this._spec.nodePoint?.customShape\n }) as ISymbolMark;\n if (nodePointMark) {\n nodePointMark.setZIndex(LayoutZIndex.Node);\n this._nodePointMark = nodePointMark;\n }\n\n const ripplePointMark = this._createMark(CorrelationSeries.mark.ripplePoint, {\n key: DEFAULT_DATA_INDEX,\n dataView: this._centerSeriesData.getDataView(),\n dataProductId: this._centerSeriesData.getProductId()\n }) as IRippleMark;\n if (ripplePointMark) {\n this._ripplePointMark = ripplePointMark;\n }\n\n const centerPointMark = this._createMark(CorrelationSeries.mark.centerPoint, {\n key: DEFAULT_DATA_INDEX,\n dataView: this._centerSeriesData.getDataView(),\n dataProductId: this._centerSeriesData.getProductId(),\n customShape: this._spec.centerPoint?.customShape\n }) as ISymbolMark;\n if (centerPointMark) {\n centerPointMark.setZIndex(LayoutZIndex.Node);\n this._centerPointMark = centerPointMark;\n }\n }\n\n initMarkStyle(): void {\n this._initNodePointMarkStyle();\n this._initRipplePointMarkStyle();\n this._initCenterPointMarkStyle();\n }\n\n protected _initNodePointMarkStyle() {\n const nodePointMark = this._nodePointMark;\n if (!nodePointMark) {\n return;\n }\n const nodePointStyle = this._spec.nodePoint?.style ?? {};\n this.setMarkStyle<ISymbolMarkSpec>(\n nodePointMark,\n {\n x: (datum: Datum) => datum[CORRELATION_X],\n y: (datum: Datum) => datum[CORRELATION_Y],\n size: (datum: Datum) => datum[CORRELATION_SIZE],\n fill: nodePointStyle.fill ?? this.getColorAttribute(),\n fillOpacity: nodePointStyle.fillOpacity ?? 1,\n lineWidth: 0\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(nodePointMark);\n }\n\n protected _initRipplePointMarkStyle() {\n const ripplePointMark = this._ripplePointMark;\n if (!ripplePointMark) {\n return;\n }\n const ripplePointStyle = this._spec.ripplePoint?.style ?? {};\n\n this.setMarkStyle<IRippleMarkSpec>(\n ripplePointMark,\n {\n x: () => {\n return this._spec.centerX ?? (this._viewBox.x1 + this._viewBox.x2) / 2;\n },\n y: () => {\n return this._spec.centerY ?? (this._viewBox.y1 + this._viewBox.y2) / 2;\n },\n size: () => {\n return Math.max(this._viewBox.x2 - this._viewBox.x1, this._viewBox.y2 - this._viewBox.y1) / 2;\n },\n fill: ripplePointStyle.fill ?? this.getColorAttribute(),\n opacity: ripplePointStyle.fillOpacity ?? 0.2,\n ripple: ripplePointStyle.ripple ?? 0\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n protected _initCenterPointMarkStyle() {\n const centerPointMark = this._centerPointMark;\n if (!centerPointMark) {\n return;\n }\n this.setMarkStyle<ISymbolMarkSpec>(\n centerPointMark,\n {\n x: () => {\n return this._spec.centerX ?? (this._viewBox.x1 + this._viewBox.x2) / 2;\n },\n y: () => {\n return this._spec.centerY ?? (this._viewBox.y1 + this._viewBox.y2) / 2;\n },\n size: () => {\n return (0.2 * Math.max(this._viewBox.x2 - this._viewBox.x1, this._viewBox.y2 - this._viewBox.y1)) / 2;\n },\n fill: this._spec.centerPoint?.style?.fill ?? this.getColorAttribute(),\n fillOpacity: this._spec.centerPoint?.style?.fillOpacity ?? 1\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(centerPointMark);\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._nodePointMark && this._tooltipHelper.activeTriggerSet.mark.add(this._nodePointMark);\n }\n\n initLabelMarkStyle(labelMark?: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n this.setMarkStyle(\n labelMark,\n {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this._categoryField];\n },\n z: this.dataToPositionZ.bind(this)\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n initAnimation() {\n const appearPreset = (this._spec.animationAppear as IStateAnimateSpec<CorrelationAppearPreset>)?.preset;\n\n this._nodePointMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('correlation')?.({}, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.nodePoint, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getGroupFields(): string[] {\n return [];\n }\n getStackGroupFields(): string[] {\n return [];\n }\n getStackValueField(): string {\n return '';\n }\n getActiveMarks(): IMark[] {\n return [this._nodePointMark, this._centerPointMark];\n }\n\n /** 获取维度field */\n getDimensionField(): string[] {\n return [this._categoryField];\n }\n /** 获取指标field */\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._viewBox.set(0, 0, this._region.getLayoutRect().width, this._region.getLayoutRect().height);\n this._rawData.reRunAllTransform();\n this.getViewData().reRunAllTransform();\n }\n}\n\nexport const registerCorrelationSeries = () => {\n registerSymbolMark();\n registerRippleMark();\n Factory.registerSeries(CorrelationSeries.type, CorrelationSeries);\n registerCorrelationAnimation();\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/correlation/correlation.ts"],"names":[],"mappings":"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","file":"correlation.js","sourcesContent":["import { PolarSeries } from '../polar/polar';\nimport type { ICorrelationSeriesSpec } from './interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { SeriesMarkMap } from '../interface';\nimport { correlationSeriesMark } from './constant';\nimport type { ISymbolMark } from '../../mark/symbol';\nimport { registerDataSetInstanceTransform, registerDataSetInstanceParser } from '../../data/register';\nimport { correlation } from '../../data/transforms/correlation';\nimport { correlationCenter } from '../../data/transforms/correlation-center';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ICorrelationOpt } from '../../data/transforms/correlation';\nimport type { IBounds } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { Bounds, isValid } from '@visactor/vutils';\nimport { registerSymbolMark } from '../../mark/symbol';\nimport { SeriesData } from '../base/series-data';\nimport type { Maybe, Datum, ISymbolMarkSpec, IRippleMarkSpec, AdaptiveSpec } from '../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ICorrelationSeriesTheme } from './interface';\nimport { AttributeLevel, DEFAULT_DATA_INDEX, LayoutZIndex } from '../../constant';\nimport { DataView, DataSet, dataViewParser } from '@visactor/vdataset';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport type { IRippleMark } from '../../mark/ripple';\nimport { registerRippleMark } from '../../mark/ripple';\n// eslint-disable-next-line no-duplicate-imports\nimport { RippleMark } from '../../mark/ripple';\nimport type { ILabelMark } from '../../mark/label';\n// eslint-disable-next-line no-duplicate-imports\nimport { CORRELATION_X, CORRELATION_Y, CORRELATION_SIZE } from '../../constant';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { Factory } from '../../core/factory';\nimport { registerCorrelationAnimation, type CorrelationAppearPreset } from './animation';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IMark } from '../../mark/interface';\nimport { CorrelationSeriesSpecTransformer } from './correlation-transformer';\n\nexport class CorrelationSeries<T extends ICorrelationSeriesSpec = ICorrelationSeriesSpec> extends PolarSeries<\n AdaptiveSpec<T, 'outerRadius' | 'innerRadius'>\n> {\n static readonly type: string = SeriesTypeEnum.correlation;\n type = SeriesTypeEnum.correlation;\n\n static readonly mark: SeriesMarkMap = correlationSeriesMark;\n static readonly transformerConstructor = CorrelationSeriesSpecTransformer as any;\n readonly transformerConstructor = CorrelationSeriesSpecTransformer;\n\n protected _centerSeriesData: SeriesData;\n\n private _nodePointMark: ISymbolMark;\n private _ripplePointMark: IRippleMark;\n private _centerPointMark: ISymbolMark;\n\n private _viewBox: IBounds = new Bounds();\n\n protected _categoryField!: string;\n getCategoryField() {\n return this._categoryField;\n }\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n protected _valueField!: string;\n getValueField() {\n return this._valueField;\n }\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n protected _seriesField?: string;\n getSeriesField() {\n return this._seriesField;\n }\n setSeriesField(field: string) {\n if (isValid(field)) {\n this._seriesField = field;\n }\n }\n\n protected _sizeField?: ICorrelationSeriesSpec['sizeField'];\n getSizeField() {\n return this._sizeField;\n }\n setSizeField(field: string) {\n if (isValid(field)) {\n this._sizeField = field;\n }\n }\n\n protected _sizeRange?: ICorrelationSeriesSpec['sizeRange'];\n getSizeRange() {\n return this._sizeRange;\n }\n setSizeRange(range: number[]) {\n if (isValid(range)) {\n this._sizeRange = range;\n }\n }\n\n protected _viewDataTransform!: SeriesData;\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n\n this.setSeriesField(this._spec.seriesField);\n this.setSizeField(this._spec.sizeField);\n this.setSizeRange(this._spec.sizeRange);\n }\n\n protected initData() {\n super.initData();\n\n if (!this._data) {\n return;\n }\n\n registerDataSetInstanceTransform(this._dataSet, 'correlation', correlation);\n\n const centerDataSet = new DataSet();\n registerDataSetInstanceParser(centerDataSet, 'dataview', dataViewParser);\n registerDataSetInstanceTransform(centerDataSet, 'correlationCenter', correlationCenter);\n const centerDataView = new DataView(centerDataSet, { name: `${this.type}_${this.id}_center` });\n centerDataView.parse([this.getViewData()], {\n type: 'dataview'\n });\n centerDataView.transform({\n type: 'correlationCenter',\n options: {\n keyword: this._spec.centerLabel?.style?.text ?? '',\n categoryField: this._spec.categoryField\n }\n });\n\n this._centerSeriesData = new SeriesData(this._option, centerDataView);\n }\n\n protected _statisticViewData(): void {\n super._statisticViewData();\n this._data.getDataView().transform({\n type: 'correlation',\n options: {\n view: () => {\n return {\n x0: this._viewBox.x1,\n x1: this._viewBox.x2,\n y0: this._viewBox.y1,\n y1: this._viewBox.y2\n };\n },\n field: this._spec.valueField,\n radiusRange: this._spec.sizeRange as [number, number],\n radiusField: this._spec.sizeField,\n center: [this._spec.centerX, this._spec.centerY],\n innerRadius: this._spec.innerRadius,\n outerRadius: this._spec.outerRadius,\n startAngle: this._spec.startAngle,\n endAngle: this._spec.endAngle\n } as ICorrelationOpt\n });\n }\n\n initMark(): void {\n const nodePointMark = this._createMark(CorrelationSeries.mark.nodePoint, {\n groupKey: this._seriesField,\n isSeriesMark: true,\n key: DEFAULT_DATA_INDEX,\n customShape: this._spec.nodePoint?.customShape\n }) as ISymbolMark;\n if (nodePointMark) {\n nodePointMark.setZIndex(LayoutZIndex.Node);\n this._nodePointMark = nodePointMark;\n }\n\n const ripplePointMark = this._createMark(CorrelationSeries.mark.ripplePoint, {\n key: DEFAULT_DATA_INDEX,\n dataView: this._centerSeriesData.getDataView(),\n dataProductId: this._centerSeriesData.getProductId()\n }) as IRippleMark;\n if (ripplePointMark) {\n this._ripplePointMark = ripplePointMark;\n }\n\n const centerPointMark = this._createMark(CorrelationSeries.mark.centerPoint, {\n key: DEFAULT_DATA_INDEX,\n dataView: this._centerSeriesData.getDataView(),\n dataProductId: this._centerSeriesData.getProductId(),\n customShape: this._spec.centerPoint?.customShape\n }) as ISymbolMark;\n if (centerPointMark) {\n centerPointMark.setZIndex(LayoutZIndex.Node);\n this._centerPointMark = centerPointMark;\n }\n }\n\n initMarkStyle(): void {\n this._initNodePointMarkStyle();\n this._initRipplePointMarkStyle();\n this._initCenterPointMarkStyle();\n }\n\n protected _initNodePointMarkStyle() {\n const nodePointMark = this._nodePointMark;\n if (!nodePointMark) {\n return;\n }\n const nodePointStyle = this._spec.nodePoint?.style ?? {};\n this.setMarkStyle<ISymbolMarkSpec>(\n nodePointMark,\n {\n x: (datum: Datum) => datum[CORRELATION_X],\n y: (datum: Datum) => datum[CORRELATION_Y],\n size: (datum: Datum) => datum[CORRELATION_SIZE],\n fill: nodePointStyle.fill ?? this.getColorAttribute(),\n fillOpacity: nodePointStyle.fillOpacity ?? 1,\n lineWidth: 0\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(nodePointMark);\n }\n\n protected _initRipplePointMarkStyle() {\n const ripplePointMark = this._ripplePointMark;\n if (!ripplePointMark) {\n return;\n }\n const ripplePointStyle = this._spec.ripplePoint?.style ?? {};\n\n this.setMarkStyle<IRippleMarkSpec>(\n ripplePointMark,\n {\n x: () => {\n return this._spec.centerX ?? (this._viewBox.x1 + this._viewBox.x2) / 2;\n },\n y: () => {\n return this._spec.centerY ?? (this._viewBox.y1 + this._viewBox.y2) / 2;\n },\n size: () => {\n return Math.max(this._viewBox.x2 - this._viewBox.x1, this._viewBox.y2 - this._viewBox.y1) / 2;\n },\n fill: ripplePointStyle.fill ?? this.getColorAttribute(),\n opacity: ripplePointStyle.fillOpacity ?? 0.2,\n ripple: ripplePointStyle.ripple ?? 0\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n protected _initCenterPointMarkStyle() {\n const centerPointMark = this._centerPointMark;\n if (!centerPointMark) {\n return;\n }\n this.setMarkStyle<ISymbolMarkSpec>(\n centerPointMark,\n {\n x: () => {\n return this._spec.centerX ?? (this._viewBox.x1 + this._viewBox.x2) / 2;\n },\n y: () => {\n return this._spec.centerY ?? (this._viewBox.y1 + this._viewBox.y2) / 2;\n },\n size: () => {\n return (0.2 * Math.max(this._viewBox.x2 - this._viewBox.x1, this._viewBox.y2 - this._viewBox.y1)) / 2;\n },\n fill: this._spec.centerPoint?.style?.fill ?? this.getColorAttribute(),\n fillOpacity: this._spec.centerPoint?.style?.fillOpacity ?? 1\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n\n this._trigger.registerMark(centerPointMark);\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._nodePointMark && this._tooltipHelper.activeTriggerSet.mark.add(this._nodePointMark);\n }\n\n initLabelMarkStyle(labelMark?: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n this.setMarkStyle(\n labelMark,\n {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this._categoryField];\n },\n z: this.dataToPositionZ.bind(this)\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n initAnimation() {\n const appearPreset = (this._spec.animationAppear as IStateAnimateSpec<CorrelationAppearPreset>)?.preset;\n\n this._nodePointMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('correlation')?.({}, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.nodePoint, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getGroupFields(): string[] {\n return [];\n }\n getStackGroupFields(): string[] {\n return [];\n }\n getStackValueField(): string {\n return '';\n }\n getActiveMarks(): IMark[] {\n return [this._nodePointMark, this._centerPointMark];\n }\n\n /** 获取维度field */\n getDimensionField(): string[] {\n return [this._categoryField];\n }\n /** 获取指标field */\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._viewBox.set(\n 0,\n 0,\n this._region.getLayoutRectExcludeIndent().width,\n this._region.getLayoutRectExcludeIndent().height\n );\n this._rawData.reRunAllTransform();\n this.getViewData().reRunAllTransform();\n }\n}\n\nexport const registerCorrelationSeries = () => {\n registerSymbolMark();\n registerRippleMark();\n Factory.registerSeries(CorrelationSeries.type, CorrelationSeries);\n registerCorrelationAnimation();\n};\n"]}
|
|
@@ -19,7 +19,7 @@ class GaugeSeries extends progress_like_1.ProgressLikeSeries {
|
|
|
19
19
|
var _a;
|
|
20
20
|
super.initData();
|
|
21
21
|
(0, register_1.registerDataSetInstanceTransform)(this._option.dataSet, "spiltSegment", ((data, op) => {
|
|
22
|
-
const dataCollect =
|
|
22
|
+
const dataCollect = data.slice();
|
|
23
23
|
return dataCollect.sort(((a, b) => a[this._angleField[0]] - b[this._angleField[0]])),
|
|
24
24
|
dataCollect.forEach(((datum, i) => {
|
|
25
25
|
datum[constant_1.SEGMENT_FIELD_END] = datum[this._angleField[0]], datum[constant_1.SEGMENT_FIELD_START] = i > 0 ? dataCollect[i - 1][constant_1.SEGMENT_FIELD_END] : void 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":"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","file":"gauge.js","sourcesContent":["import type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IGaugeSeriesSpec, IGaugeSeriesTheme } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport type { IProgressArcMark } from '../../mark/progress-arc';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant';\nimport type { Datum } from '@visactor/vgrammar-core';\nimport type { Maybe } from '../../typings';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\n// eslint-disable-next-line no-duplicate-imports\nimport { ProgressArcMark, registerProgressArcMark } from '../../mark/progress-arc';\nimport { gaugeSeriesMark } from './constant';\nimport { degreeToRadian, isValid } from '@visactor/vutils';\nimport { Factory } from '../../core/factory';\nimport { registerProgressLikeAnimation } from '../polar/progress-like';\nimport type { IMark } from '../../mark/interface';\nimport { GaugeSeriesSpecTransformer } from './gauge-transformer';\n\nexport class GaugeSeries<T extends IGaugeSeriesSpec = IGaugeSeriesSpec> extends ProgressLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n static readonly mark: SeriesMarkMap = gaugeSeriesMark;\n static readonly transformerConstructor = GaugeSeriesSpecTransformer as any;\n readonly transformerConstructor = GaugeSeriesSpecTransformer;\n\n private _segmentMark: IProgressArcMark | null = null;\n private _trackMark: IProgressArcMark | null = null;\n\n protected _stack: boolean = false;\n protected _padAngle: number = 0;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n this._padAngle = degreeToRadian(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Datum[], op: string) => {\n // 数据处理\n const dataCollect = [...data];\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n registerDataSetInstanceTransform(this._option.dataSet, 'spiltSegment', spiltSegment);\n this.getViewData()?.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n }\n\n initMark(): void {\n super.initMark();\n this._trackMark = this._createMark(GaugeSeries.mark.track, {\n parent: this._arcGroupMark,\n dataView: false\n }) as IProgressArcMark;\n this._segmentMark = this._createMark(GaugeSeries.mark.segment, {\n parent: this._arcGroupMark,\n isSeriesMark: true\n }) as IProgressArcMark;\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n this._trigger.registerMark(segmentMark);\n }\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._segmentMark && this._tooltipHelper.activeTriggerSet.mark.add(this._segmentMark);\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n this._trigger.registerMark(trackMark);\n }\n }\n\n protected _getAngleValueStartWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return Math.min(startAngle + this._padAngle / 2, (startAngle + endAngle) / 2);\n }\n\n protected _getAngleValueEndWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return Math.max(endAngle - this._padAngle / 2, (startAngle + endAngle) / 2);\n }\n\n protected _getAngleValueStartWithoutPadAngle(datum: Datum) {\n return isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n }\n\n protected _getAngleValueEndWithoutPadAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._segmentMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circularProgress')?.(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.segment, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n\nexport const registerGaugeSeries = () => {\n registerProgressArcMark();\n registerProgressLikeAnimation();\n Factory.registerSeries(GaugeSeries.type, GaugeSeries);\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/gauge/gauge.ts"],"names":[],"mappings":"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","file":"gauge.js","sourcesContent":["import type { SeriesMarkMap } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IGaugeSeriesSpec, IGaugeSeriesTheme } from './interface';\nimport { ProgressLikeSeries } from '../polar/progress-like/progress-like';\nimport type { IProgressArcMark } from '../../mark/progress-arc';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { SEGMENT_FIELD_END, SEGMENT_FIELD_START } from '../../constant';\nimport type { Datum } from '@visactor/vgrammar-core';\nimport type { Maybe } from '../../typings';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\n// eslint-disable-next-line no-duplicate-imports\nimport { ProgressArcMark, registerProgressArcMark } from '../../mark/progress-arc';\nimport { gaugeSeriesMark } from './constant';\nimport { degreeToRadian, isValid } from '@visactor/vutils';\nimport { Factory } from '../../core/factory';\nimport { registerProgressLikeAnimation } from '../polar/progress-like';\nimport type { IMark } from '../../mark/interface';\nimport { GaugeSeriesSpecTransformer } from './gauge-transformer';\n\nexport class GaugeSeries<T extends IGaugeSeriesSpec = IGaugeSeriesSpec> extends ProgressLikeSeries<T> {\n static readonly type: string = SeriesTypeEnum.gauge;\n type = SeriesTypeEnum.gauge;\n\n static readonly mark: SeriesMarkMap = gaugeSeriesMark;\n static readonly transformerConstructor = GaugeSeriesSpecTransformer as any;\n readonly transformerConstructor = GaugeSeriesSpecTransformer;\n\n private _segmentMark: IProgressArcMark | null = null;\n private _trackMark: IProgressArcMark | null = null;\n\n protected _stack: boolean = false;\n protected _padAngle: number = 0;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n this._padAngle = degreeToRadian(this._spec.padAngle ?? 0);\n }\n\n initData(): void {\n super.initData();\n\n /**\n * @description 将数据排序并调整图元的起始点为上一个数据的终点,但是终点维持不变\n */\n const spiltSegment = (data: Datum[], op: string) => {\n // 数据处理\n const dataCollect = data.slice();\n dataCollect.sort((a, b) => a[this._angleField[0]] - b[this._angleField[0]]);\n dataCollect.forEach((datum: any, i) => {\n datum[SEGMENT_FIELD_END] = datum[this._angleField[0]];\n if (i > 0) {\n datum[SEGMENT_FIELD_START] = dataCollect[i - 1][SEGMENT_FIELD_END];\n } else {\n datum[SEGMENT_FIELD_START] = undefined;\n }\n });\n return dataCollect;\n };\n\n registerDataSetInstanceTransform(this._option.dataSet, 'spiltSegment', spiltSegment);\n this.getViewData()?.transform(\n {\n type: 'spiltSegment'\n },\n false\n );\n }\n\n initMark(): void {\n super.initMark();\n this._trackMark = this._createMark(GaugeSeries.mark.track, {\n parent: this._arcGroupMark,\n dataView: false\n }) as IProgressArcMark;\n this._segmentMark = this._createMark(GaugeSeries.mark.segment, {\n parent: this._arcGroupMark,\n isSeriesMark: true\n }) as IProgressArcMark;\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n this.initTrackMarkStyle();\n this.initSegmentMarkStyle();\n }\n\n private initSegmentMarkStyle() {\n const segmentMark = this._segmentMark;\n if (segmentMark) {\n this.setMarkStyle(segmentMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._getAngleValueStart.bind(this),\n endAngle: this._getAngleValueEnd.bind(this),\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n fill: this.getColorAttribute(),\n zIndex: 200,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // forceShowCap 是内部属性,不在接口中暴露\n forceShowCap: true\n });\n this._trigger.registerMark(segmentMark);\n }\n }\n\n protected initTooltip() {\n super.initTooltip();\n\n this._segmentMark && this._tooltipHelper.activeTriggerSet.mark.add(this._segmentMark);\n }\n\n private initTrackMarkStyle() {\n const trackMark = this._trackMark;\n if (trackMark) {\n this.setMarkStyle(trackMark, {\n x: () => this.angleAxisHelper.center().x,\n y: () => this.angleAxisHelper.center().y,\n startAngle: this._startAngle,\n endAngle: this._endAngle,\n innerRadius: () => this._computeLayoutRadius() * (this._spec.innerRadius ?? 0),\n outerRadius: () => this._computeLayoutRadius() * (this._spec.radius ?? this._spec.outerRadius ?? 1), // 需要优先兼容this._spec.radius\n cap: this._spec.roundCap ?? false,\n boundsMode: 'imprecise',\n cornerRadius: this._spec.cornerRadius,\n zIndex: 100\n });\n this._trigger.registerMark(trackMark);\n }\n }\n\n protected _getAngleValueStartWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return Math.min(startAngle + this._padAngle / 2, (startAngle + endAngle) / 2);\n }\n\n protected _getAngleValueEndWithoutMask(datum: Datum) {\n const startAngle = this._getAngleValueStartWithoutPadAngle(datum);\n const endAngle = this._getAngleValueEndWithoutPadAngle(datum);\n return Math.max(endAngle - this._padAngle / 2, (startAngle + endAngle) / 2);\n }\n\n protected _getAngleValueStartWithoutPadAngle(datum: Datum) {\n return isValid(datum[SEGMENT_FIELD_START])\n ? this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_START]])\n : this._startAngle;\n }\n\n protected _getAngleValueEndWithoutPadAngle(datum: Datum) {\n return this.angleAxisHelper.dataToPosition([datum[SEGMENT_FIELD_END]]);\n }\n\n initAnimation() {\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<any>)?.preset;\n\n this._segmentMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circularProgress')?.(\n {\n startAngle: this._startAngle\n },\n appearPreset\n ),\n userAnimationConfig(SeriesMarkNameEnum.segment, this._spec, this._markAttributeContext)\n )\n );\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [];\n }\n}\n\nexport const registerGaugeSeries = () => {\n registerProgressArcMark();\n registerProgressLikeAnimation();\n Factory.registerSeries(GaugeSeries.type, GaugeSeries);\n};\n"]}
|
package/cjs/series/line/line.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.registerLineSeries = exports.LineSeries = void 0;
|
|
6
6
|
|
|
7
|
-
const cartesian_1 = require("../cartesian/cartesian"), type_1 = require("../interface/type"), line_mixin_1 = require("../mixin/line-mixin"), vutils_1 = require("@visactor/vutils"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), constant_1 = require("./constant"), line_1 = require("../../mark/line"), symbol_1 = require("../../mark/symbol"), factory_1 = require("../../core/factory"), vgrammar_core_1 = require("@visactor/vgrammar-core"), line_mixin_transformer_1 = require("../mixin/line-mixin-transformer");
|
|
7
|
+
const cartesian_1 = require("../cartesian/cartesian"), type_1 = require("../interface/type"), line_mixin_1 = require("../mixin/line-mixin"), vutils_1 = require("@visactor/vutils"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), constant_1 = require("./constant"), line_1 = require("../../mark/line"), symbol_1 = require("../../mark/symbol"), factory_1 = require("../../core/factory"), vgrammar_core_1 = require("@visactor/vgrammar-core"), line_mixin_transformer_1 = require("../mixin/line-mixin-transformer"), utils_2 = require("../util/utils");
|
|
8
8
|
|
|
9
9
|
class LineSeries extends cartesian_1.CartesianSeries {
|
|
10
10
|
constructor() {
|
|
@@ -33,13 +33,16 @@ class LineSeries extends cartesian_1.CartesianSeries {
|
|
|
33
33
|
}
|
|
34
34
|
initAnimation() {
|
|
35
35
|
var _a, _b, _c, _d;
|
|
36
|
-
const
|
|
36
|
+
const lineAnimationParams = {
|
|
37
37
|
direction: this.direction
|
|
38
38
|
}, appearPreset = null === (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.animationAppear) || void 0 === _b ? void 0 : _b.preset;
|
|
39
|
-
this._lineMark.setAnimationConfig((0, utils_1.animationConfig)(null === (_c = factory_1.Factory.getAnimationInKey("line")) || void 0 === _c ? void 0 : _c(
|
|
39
|
+
if (this._lineMark.setAnimationConfig((0, utils_1.animationConfig)(null === (_c = factory_1.Factory.getAnimationInKey("line")) || void 0 === _c ? void 0 : _c(lineAnimationParams, appearPreset), (0,
|
|
40
40
|
utils_1.userAnimationConfig)(type_1.SeriesMarkNameEnum.line, this._spec, this._markAttributeContext))),
|
|
41
|
-
this._symbolMark
|
|
42
|
-
|
|
41
|
+
this._symbolMark) {
|
|
42
|
+
const animationParams = (0, utils_2.getGroupAnimationParams)(this);
|
|
43
|
+
this._symbolMark.setAnimationConfig((0, utils_1.animationConfig)(null === (_d = factory_1.Factory.getAnimationInKey("scaleInOut")) || void 0 === _d ? void 0 : _d(), (0,
|
|
44
|
+
utils_1.userAnimationConfig)(type_1.SeriesMarkNameEnum.point, this._spec, this._markAttributeContext), animationParams));
|
|
45
|
+
}
|
|
43
46
|
}
|
|
44
47
|
onLayoutEnd(ctx) {
|
|
45
48
|
super.onLayoutEnd(ctx), this.reCompileSampling();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/line/line.ts"],"names":[],"mappings":";;;AACA,sDAAyD;AAEzD,4CAAuE;AACvE,oDAA0D;AAC1D,6CAAyC;AAEzC,iDAA6E;AAC7E,mDAA4F;AAI5F,yCAA4C;AAC5C,
|
|
1
|
+
{"version":3,"sources":["../src/series/line/line.ts"],"names":[],"mappings":"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","file":"line.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { LineLikeSeriesMixin } from '../mixin/line-mixin';\nimport { mixin } from '@visactor/vutils';\nimport type { Datum } from '../../typings';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerLineAnimation, registerScaleInOutAnimation } from '../../animation/config';\nimport type { ILineSeriesSpec } from './interface';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { LineAppearPreset } from './animation';\nimport { lineSeriesMark } from './constant';\nimport { registerLineMark } from '../../mark/line';\nimport { registerSymbolMark } from '../../mark/symbol';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\nimport { registerSampleTransform, registerMarkOverlapTransform } from '@visactor/vgrammar-core';\nimport { LineLikeSeriesSpecTransformer } from '../mixin/line-mixin-transformer';\nimport { getGroupAnimationParams } from '../util/utils';\n\nexport interface LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec>\n extends Pick<\n LineLikeSeriesMixin,\n | 'initLineMark'\n | 'initSymbolMark'\n | 'initLabelMarkStyle'\n | 'initLineMarkStyle'\n | 'initSymbolMarkStyle'\n | '_lineMark'\n | '_symbolMark'\n | 'addSamplingCompile'\n | 'addOverlapCompile'\n | 'reCompileSampling'\n >,\n CartesianSeries<T> {}\n\nexport class LineSeries<T extends ILineSeriesSpec = ILineSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.line;\n type = SeriesTypeEnum.line;\n\n static readonly mark: SeriesMarkMap = lineSeriesMark;\n static readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n readonly transformerConstructor = LineLikeSeriesSpecTransformer;\n\n protected _sortDataByAxis: boolean = false;\n\n compile(): void {\n super.compile();\n this.addSamplingCompile();\n this.addOverlapCompile();\n }\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n const seriesMark = this._spec.seriesMark ?? 'line';\n this.initLineMark(progressive, seriesMark === 'line');\n this.initSymbolMark(progressive, seriesMark === 'point');\n }\n\n protected initTooltip() {\n super.initTooltip();\n this._lineMark && this._tooltipHelper.activeTriggerSet.dimension.add(this._lineMark);\n this._symbolMark && this._tooltipHelper.activeTriggerSet.mark.add(this._symbolMark);\n }\n\n initMarkStyle(): void {\n this.initLineMarkStyle(this._direction);\n this.initSymbolMarkStyle();\n }\n\n initAnimation() {\n const lineAnimationParams = { direction: this.direction };\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<LineAppearPreset>)?.preset;\n this._lineMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('line')?.(lineAnimationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.line, this._spec, this._markAttributeContext)\n )\n );\n\n if (this._symbolMark) {\n const animationParams = getGroupAnimationParams(this);\n this._symbolMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('scaleInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.point, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this.reCompileSampling();\n }\n\n getSeriesStyle(datum: Datum) {\n const isLineAsSeriesMark = this._spec?.seriesMark !== 'point'; // 加判空防止某些特殊时刻(如 updateSpec 时)鼠标滑过图表导致报错\n return (attribute: string) => {\n if (isLineAsSeriesMark) {\n // 增加一个标识位,用于是否替换,因为图例获取颜色的时候是不需要替换的\n attribute === 'fill' && (attribute = 'stroke');\n }\n return this._seriesMark?.getAttribute(attribute as any, datum) ?? undefined;\n };\n }\n\n getDefaultShapeType() {\n return 'circle';\n }\n\n getActiveMarks(): IMark[] {\n return [this._lineMark, this._symbolMark];\n }\n}\n\nmixin(LineSeries, LineLikeSeriesMixin);\n\nexport const registerLineSeries = () => {\n registerSampleTransform();\n registerMarkOverlapTransform();\n registerLineMark();\n registerSymbolMark();\n registerLineAnimation();\n registerScaleInOutAnimation();\n Factory.registerSeries(LineSeries.type, LineSeries);\n};\n"]}
|
|
@@ -9,7 +9,7 @@ const base_1 = require("../../constant/base"), vdataset_1 = require("@visactor/v
|
|
|
9
9
|
class LineLikeSeriesMixin {
|
|
10
10
|
addSamplingCompile() {
|
|
11
11
|
if (this._spec.sampling) {
|
|
12
|
-
const {width: width, height: height} = this._region.
|
|
12
|
+
const {width: width, height: height} = this._region.getLayoutRectExcludeIndent(), samplingTrans = [], fieldsY = this._fieldY, fieldsX = this._fieldX;
|
|
13
13
|
samplingTrans.push({
|
|
14
14
|
type: "sampling",
|
|
15
15
|
size: this._direction === space_1.Direction.vertical ? width : height,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/mixin/line-mixin.ts"],"names":[],"mappings":"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","file":"line-mixin.js","sourcesContent":["import { PREFIX } from '../../constant/base';\nimport type { ISeriesOption } from '../interface/common';\nimport { DataView } from '@visactor/vdataset';\nimport { ChartEvent } from '../../constant/event';\nimport type { ITrigger } from '../../interaction/interface';\nimport type { ISeries } from '../interface/series';\nimport { AttributeLevel } from '../../constant';\n\nimport type { IMark, IMarkProgressiveConfig } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { ILineMark } from '../../mark/line';\nimport type { ISymbolMark } from '../../mark/symbol';\nimport type { ITextMark } from '../../mark/text';\nimport type {\n DirectionType,\n IInvalidType,\n InterpolateType,\n ILineMarkSpec,\n ISymbolMarkSpec,\n Maybe,\n Datum,\n IMarkTheme,\n ILayoutRect\n} from '../../typings';\nimport { DEFAULT_LINEAR_INTERPOLATE, DEFAULT_SMOOTH_INTERPOLATE } from '../../typings/interpolate';\nimport { Direction } from '../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { DEFAULT_CLOSE_STROKE_JOIN } from '../../typings/line-stroke';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeriesMarkInfo, ISeriesMarkInitOption, ISeriesTooltipHelper } from '../interface';\nimport type { ILabelSpec, TransformedLabelSpec } from '../../component/label';\nimport { shouldMarkDoMorph } from '../../animation/utils';\nimport { DimensionEventEnum, type DimensionEventParams } from '../../event/events/dimension';\nimport type { EventCallback, EventParams } from '../../event/interface';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { lineLikeSeriesMark } from './constant';\nimport type { ILabelMark } from '../../mark/label';\nimport type { Functional } from '@visactor/vrender-components';\nimport type { IRegion } from '../../region/interface';\nimport type { SeriesData } from '../base/series-data';\n\nexport interface ILineLikeSeriesTheme {\n line?: Partial<IMarkTheme<ILineMarkSpec>>;\n point?: Partial<IMarkTheme<ISymbolMarkSpec>> & { visibleInActive?: boolean };\n label?: Partial<ILineLikeLabelSpec>;\n}\n\nexport type ILineLikeLabelSpec = Omit<ILabelSpec, 'position'> & {\n /** 标签位置\n * @since 1.6.0\n * 支持以函数形式配置\n */\n position?: Functional<\n 'top' | 'bottom' | 'left' | 'right' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'center'\n >;\n};\n\nexport interface LineLikeSeriesMixin extends ISeries {\n _spec: any;\n _option: ISeriesOption;\n _seriesField: string;\n _theme: Maybe<ILineLikeSeriesTheme>;\n _trigger: ITrigger;\n _tooltipHelper: ISeriesTooltipHelper;\n _invalidType: IInvalidType;\n _region: IRegion;\n _direction: DirectionType;\n _data: SeriesData;\n\n _lineMark: ILineMark;\n _symbolMark: ISymbolMark;\n _symbolActiveMark: ISymbolMark;\n _labelMark: ITextMark;\n _fieldX?: string[];\n _fieldY?: string[];\n _fieldZ?: string[];\n\n _createMark: (markInfo: ISeriesMarkInfo, option?: ISeriesMarkInitOption) => IMark;\n _getInvalidDefined: () => boolean;\n _getInvalidConnectType: () => IInvalidType;\n\n getLayoutRect: () => ILayoutRect;\n}\n\nexport class LineLikeSeriesMixin {\n addSamplingCompile(): void {\n if (this._spec.sampling) {\n const { width, height } = this._region.getLayoutRect();\n const samplingTrans = [];\n const fieldsY = this._fieldY;\n const fieldsX = this._fieldX;\n\n samplingTrans.push({\n type: 'sampling',\n size: this._direction === Direction.vertical ? width : height,\n factor: this._spec.samplingFactor,\n yfield: this._direction === Direction.vertical ? fieldsY[0] : fieldsX[0],\n groupBy: this._seriesField,\n mode: this._spec.sampling\n });\n this._data.getProduct().transform(samplingTrans);\n }\n }\n\n addOverlapCompile(): void {\n if (this._spec.markOverlap) {\n const overlapTrans = [];\n overlapTrans.push({\n type: 'markoverlap',\n direction: this._direction === Direction.horizontal && this.coordinate === 'cartesian' ? 2 : 1,\n delta: this._spec.pointDis,\n deltaMul: this._spec.pointDisMul,\n groupBy: this._seriesField\n });\n this._symbolMark?.getProduct().transform(overlapTrans);\n }\n }\n\n reCompileSampling(): void {\n if (this._spec.sampling) {\n this.compile();\n }\n }\n\n initLineMark(progressive?: IMarkProgressiveConfig, isSeriesMark?: boolean) {\n this._lineMark = this._createMark(lineLikeSeriesMark.line, {\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n isSeriesMark: isSeriesMark ?? true,\n progressive,\n customShape: this._spec.line?.customShape\n }) as ILineMark;\n return this._lineMark;\n }\n\n initLineMarkStyle(direction?: DirectionType, areaCurveType?: InterpolateType) {\n const lineMark = this._lineMark;\n if (lineMark) {\n this.setMarkStyle(\n lineMark,\n {\n stroke: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n lineMark,\n {\n defined: this._getInvalidDefined,\n connectedType: this._getInvalidConnectType()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(lineMark, 'defined');\n });\n if (this.coordinate === 'polar') {\n // 极坐标系下需要关闭\n this.setMarkStyle(\n lineMark,\n {\n lineJoin: DEFAULT_CLOSE_STROKE_JOIN,\n curveType: DEFAULT_LINEAR_INTERPOLATE,\n closePath: true\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n const userCurveType = areaCurveType ?? this.getSpec().line?.style?.curveType;\n const curveType =\n userCurveType === DEFAULT_SMOOTH_INTERPOLATE\n ? direction === Direction.vertical\n ? 'monotoneX'\n : 'monotoneY'\n : userCurveType;\n\n this.setMarkStyle(\n lineMark,\n {\n curveType\n },\n 'normal',\n AttributeLevel.Built_In\n );\n }\n\n this.setMarkStyle(\n lineMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n },\n 'normal',\n AttributeLevel.Series\n );\n this._trigger.registerMark(lineMark);\n }\n return lineMark;\n }\n\n protected _getEventElement(params: DimensionEventParams, reverse: boolean = false): Datum[] {\n // items 修改遍历方法从 mark\n let data: Datum[] = [];\n params.dimensionInfo.some(df => {\n df.data.some(dd => {\n if (dd.series === this) {\n data = dd.datum;\n return true;\n }\n return false;\n });\n return !data.length;\n });\n return data;\n }\n\n protected _dimensionTrigger(params: DimensionEventParams) {\n const elements = this._getEventElement(params);\n switch (params.action) {\n case 'enter':\n this._symbolActiveMark.getDataView().parse(elements);\n this._symbolActiveMark.getData().updateData(false);\n break;\n case 'leave':\n this._symbolActiveMark.getDataView().parse([]);\n this._symbolActiveMark.getData().updateData(false);\n case 'click':\n case 'move':\n default:\n break;\n }\n }\n\n initSymbolMark(progressive?: IMarkProgressiveConfig, isSeriesMark?: boolean) {\n if (this._spec.point?.visible !== false) {\n this._symbolMark = this._createMark(lineLikeSeriesMark.point, {\n morph: shouldMarkDoMorph(this._spec, lineLikeSeriesMark.point.name),\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n progressive,\n isSeriesMark: !!isSeriesMark,\n customShape: this._spec.point?.customShape\n }) as ISymbolMark;\n }\n\n if (this._spec.activePoint === true) {\n const activeData = new DataView(this._option.dataSet, { name: `${PREFIX}_series_${this.id}_active_point` });\n activeData.parse([]);\n this._symbolActiveMark = this._createMark(\n { name: `active_point`, type: MarkTypeEnum.symbol },\n {\n morph: false,\n groupKey: this._seriesField,\n isSeriesMark: false,\n dataView: activeData,\n parent: this._region.getInteractionMark(),\n customShape: this._spec.point?.customShape\n }\n ) as ISymbolMark;\n this._symbolActiveMark.setVisible(false);\n }\n\n return this._symbolMark;\n }\n\n initSymbolMarkStyle() {\n const symbolMark = this._symbolMark;\n if (!symbolMark) {\n return symbolMark;\n }\n this.setMarkStyle(\n symbolMark,\n {\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n symbolMark,\n {\n visible: this._getInvalidDefined\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(symbolMark, 'visible');\n });\n\n this.setMarkStyle(\n symbolMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n },\n 'normal',\n AttributeLevel.Series\n );\n this._trigger.registerMark(symbolMark);\n\n // setStyle to active point\n if (this._symbolActiveMark && this._symbolMark.stateStyle.dimension_hover) {\n // active point will show\n this._symbolActiveMark.setVisible(true);\n this.event.on(DimensionEventEnum.dimensionHover, this._dimensionTrigger.bind(this) as EventCallback<EventParams>);\n // set style with referer\n for (const state in this._symbolMark.stateStyle) {\n this._symbolActiveMark.stateStyle[state] = {};\n for (const key in this._symbolMark.stateStyle[state]) {\n this._symbolActiveMark.stateStyle[state][key] = {\n style: null,\n level: AttributeLevel.Series,\n referer: symbolMark\n };\n }\n }\n // make sure activeMark in state\n this._symbolActiveMark.state.changeStateInfo({\n stateValue: STATE_VALUE_ENUM.STATE_DIMENSION_HOVER,\n filter: () => true\n });\n }\n\n return symbolMark;\n }\n\n initLabelMarkStyle(labelMark?: ILabelMark) {\n if (!labelMark) {\n return;\n }\n if (labelMark.getTarget()?.type !== 'symbol') {\n labelMark.setRule('line-data');\n }\n this.setMarkStyle(labelMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getStackValueField()];\n },\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n });\n\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n labelMark,\n {\n visible: this._getInvalidDefined\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(labelMark, 'visible');\n });\n }\n\n initLineLabelMarkStyle(labelMark?: ILabelMark) {\n if (!labelMark) {\n return;\n }\n\n this.setMarkStyle(labelMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getSeriesField()];\n },\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n });\n }\n\n encodeDefined(mark: IMark, attr: string) {\n if (!mark) {\n return;\n }\n const statistics = this.getViewDataStatistics()?.latestData?.[this.getStackValueField()];\n if (this._invalidType === 'zero' || (statistics && statistics?.allValid)) {\n if (mark.stateStyle.normal?.[attr]?.style === true) {\n // no change\n return;\n }\n this.setMarkStyle(mark, { [attr]: true }, 'normal', AttributeLevel.Series);\n } else {\n if (mark.stateStyle.normal?.[attr]?.style !== true) {\n // no change\n return;\n }\n this.setMarkStyle(mark, { [attr]: this._getInvalidDefined }, 'normal', AttributeLevel.Series);\n }\n // if has produce, reCompile encode to set attribute to product\n if (mark.getProduct()) {\n mark.compileEncode();\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/mixin/line-mixin.ts"],"names":[],"mappings":"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","file":"line-mixin.js","sourcesContent":["import { PREFIX } from '../../constant/base';\nimport type { ISeriesOption } from '../interface/common';\nimport { DataView } from '@visactor/vdataset';\nimport { ChartEvent } from '../../constant/event';\nimport type { ITrigger } from '../../interaction/interface';\nimport type { ISeries } from '../interface/series';\nimport { AttributeLevel } from '../../constant';\n\nimport type { IMark, IMarkProgressiveConfig } from '../../mark/interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { ILineMark } from '../../mark/line';\nimport type { ISymbolMark } from '../../mark/symbol';\nimport type { ITextMark } from '../../mark/text';\nimport type {\n DirectionType,\n IInvalidType,\n InterpolateType,\n ILineMarkSpec,\n ISymbolMarkSpec,\n Maybe,\n Datum,\n IMarkTheme,\n ILayoutRect\n} from '../../typings';\nimport { DEFAULT_LINEAR_INTERPOLATE, DEFAULT_SMOOTH_INTERPOLATE } from '../../typings/interpolate';\nimport { Direction } from '../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { DEFAULT_CLOSE_STROKE_JOIN } from '../../typings/line-stroke';\n// eslint-disable-next-line no-duplicate-imports\nimport type { ISeriesMarkInfo, ISeriesMarkInitOption, ISeriesTooltipHelper } from '../interface';\nimport type { ILabelSpec, TransformedLabelSpec } from '../../component/label';\nimport { shouldMarkDoMorph } from '../../animation/utils';\nimport { DimensionEventEnum, type DimensionEventParams } from '../../event/events/dimension';\nimport type { EventCallback, EventParams } from '../../event/interface';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { lineLikeSeriesMark } from './constant';\nimport type { ILabelMark } from '../../mark/label';\nimport type { Functional } from '@visactor/vrender-components';\nimport type { IRegion } from '../../region/interface';\nimport type { SeriesData } from '../base/series-data';\n\nexport interface ILineLikeSeriesTheme {\n line?: Partial<IMarkTheme<ILineMarkSpec>>;\n point?: Partial<IMarkTheme<ISymbolMarkSpec>> & { visibleInActive?: boolean };\n label?: Partial<ILineLikeLabelSpec>;\n}\n\nexport type ILineLikeLabelSpec = Omit<ILabelSpec, 'position'> & {\n /** 标签位置\n * @since 1.6.0\n * 支持以函数形式配置\n */\n position?: Functional<\n 'top' | 'bottom' | 'left' | 'right' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'center'\n >;\n};\n\nexport interface LineLikeSeriesMixin extends ISeries {\n _spec: any;\n _option: ISeriesOption;\n _seriesField: string;\n _theme: Maybe<ILineLikeSeriesTheme>;\n _trigger: ITrigger;\n _tooltipHelper: ISeriesTooltipHelper;\n _invalidType: IInvalidType;\n _region: IRegion;\n _direction: DirectionType;\n _data: SeriesData;\n\n _lineMark: ILineMark;\n _symbolMark: ISymbolMark;\n _symbolActiveMark: ISymbolMark;\n _labelMark: ITextMark;\n _fieldX?: string[];\n _fieldY?: string[];\n _fieldZ?: string[];\n\n _createMark: (markInfo: ISeriesMarkInfo, option?: ISeriesMarkInitOption) => IMark;\n _getInvalidDefined: () => boolean;\n _getInvalidConnectType: () => IInvalidType;\n\n getLayoutRect: () => ILayoutRect;\n}\n\nexport class LineLikeSeriesMixin {\n addSamplingCompile(): void {\n if (this._spec.sampling) {\n const { width, height } = this._region.getLayoutRectExcludeIndent();\n const samplingTrans = [];\n const fieldsY = this._fieldY;\n const fieldsX = this._fieldX;\n\n samplingTrans.push({\n type: 'sampling',\n size: this._direction === Direction.vertical ? width : height,\n factor: this._spec.samplingFactor,\n yfield: this._direction === Direction.vertical ? fieldsY[0] : fieldsX[0],\n groupBy: this._seriesField,\n mode: this._spec.sampling\n });\n this._data.getProduct().transform(samplingTrans);\n }\n }\n\n addOverlapCompile(): void {\n if (this._spec.markOverlap) {\n const overlapTrans = [];\n overlapTrans.push({\n type: 'markoverlap',\n direction: this._direction === Direction.horizontal && this.coordinate === 'cartesian' ? 2 : 1,\n delta: this._spec.pointDis,\n deltaMul: this._spec.pointDisMul,\n groupBy: this._seriesField\n });\n this._symbolMark?.getProduct().transform(overlapTrans);\n }\n }\n\n reCompileSampling(): void {\n if (this._spec.sampling) {\n this.compile();\n }\n }\n\n initLineMark(progressive?: IMarkProgressiveConfig, isSeriesMark?: boolean) {\n this._lineMark = this._createMark(lineLikeSeriesMark.line, {\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n isSeriesMark: isSeriesMark ?? true,\n progressive,\n customShape: this._spec.line?.customShape\n }) as ILineMark;\n return this._lineMark;\n }\n\n initLineMarkStyle(direction?: DirectionType, areaCurveType?: InterpolateType) {\n const lineMark = this._lineMark;\n if (lineMark) {\n this.setMarkStyle(\n lineMark,\n {\n stroke: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n lineMark,\n {\n defined: this._getInvalidDefined,\n connectedType: this._getInvalidConnectType()\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(lineMark, 'defined');\n });\n if (this.coordinate === 'polar') {\n // 极坐标系下需要关闭\n this.setMarkStyle(\n lineMark,\n {\n lineJoin: DEFAULT_CLOSE_STROKE_JOIN,\n curveType: DEFAULT_LINEAR_INTERPOLATE,\n closePath: true\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n const userCurveType = areaCurveType ?? this.getSpec().line?.style?.curveType;\n const curveType =\n userCurveType === DEFAULT_SMOOTH_INTERPOLATE\n ? direction === Direction.vertical\n ? 'monotoneX'\n : 'monotoneY'\n : userCurveType;\n\n this.setMarkStyle(\n lineMark,\n {\n curveType\n },\n 'normal',\n AttributeLevel.Built_In\n );\n }\n\n this.setMarkStyle(\n lineMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n },\n 'normal',\n AttributeLevel.Series\n );\n this._trigger.registerMark(lineMark);\n }\n return lineMark;\n }\n\n protected _getEventElement(params: DimensionEventParams, reverse: boolean = false): Datum[] {\n // items 修改遍历方法从 mark\n let data: Datum[] = [];\n params.dimensionInfo.some(df => {\n df.data.some(dd => {\n if (dd.series === this) {\n data = dd.datum;\n return true;\n }\n return false;\n });\n return !data.length;\n });\n return data;\n }\n\n protected _dimensionTrigger(params: DimensionEventParams) {\n const elements = this._getEventElement(params);\n switch (params.action) {\n case 'enter':\n this._symbolActiveMark.getDataView().parse(elements);\n this._symbolActiveMark.getData().updateData(false);\n break;\n case 'leave':\n this._symbolActiveMark.getDataView().parse([]);\n this._symbolActiveMark.getData().updateData(false);\n case 'click':\n case 'move':\n default:\n break;\n }\n }\n\n initSymbolMark(progressive?: IMarkProgressiveConfig, isSeriesMark?: boolean) {\n if (this._spec.point?.visible !== false) {\n this._symbolMark = this._createMark(lineLikeSeriesMark.point, {\n morph: shouldMarkDoMorph(this._spec, lineLikeSeriesMark.point.name),\n defaultMorphElementKey: this.getDimensionField()[0],\n groupKey: this._seriesField,\n progressive,\n isSeriesMark: !!isSeriesMark,\n customShape: this._spec.point?.customShape\n }) as ISymbolMark;\n }\n\n if (this._spec.activePoint === true) {\n const activeData = new DataView(this._option.dataSet, { name: `${PREFIX}_series_${this.id}_active_point` });\n activeData.parse([]);\n this._symbolActiveMark = this._createMark(\n { name: `active_point`, type: MarkTypeEnum.symbol },\n {\n morph: false,\n groupKey: this._seriesField,\n isSeriesMark: false,\n dataView: activeData,\n parent: this._region.getInteractionMark(),\n customShape: this._spec.point?.customShape\n }\n ) as ISymbolMark;\n this._symbolActiveMark.setVisible(false);\n }\n\n return this._symbolMark;\n }\n\n initSymbolMarkStyle() {\n const symbolMark = this._symbolMark;\n if (!symbolMark) {\n return symbolMark;\n }\n this.setMarkStyle(\n symbolMark,\n {\n fill: this.getColorAttribute()\n },\n 'normal',\n AttributeLevel.Series\n );\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n symbolMark,\n {\n visible: this._getInvalidDefined\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(symbolMark, 'visible');\n });\n\n this.setMarkStyle(\n symbolMark,\n {\n x: this.dataToPositionX.bind(this),\n y: this.dataToPositionY.bind(this),\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n },\n 'normal',\n AttributeLevel.Series\n );\n this._trigger.registerMark(symbolMark);\n\n // setStyle to active point\n if (this._symbolActiveMark && this._symbolMark.stateStyle.dimension_hover) {\n // active point will show\n this._symbolActiveMark.setVisible(true);\n this.event.on(DimensionEventEnum.dimensionHover, this._dimensionTrigger.bind(this) as EventCallback<EventParams>);\n // set style with referer\n for (const state in this._symbolMark.stateStyle) {\n this._symbolActiveMark.stateStyle[state] = {};\n for (const key in this._symbolMark.stateStyle[state]) {\n this._symbolActiveMark.stateStyle[state][key] = {\n style: null,\n level: AttributeLevel.Series,\n referer: symbolMark\n };\n }\n }\n // make sure activeMark in state\n this._symbolActiveMark.state.changeStateInfo({\n stateValue: STATE_VALUE_ENUM.STATE_DIMENSION_HOVER,\n filter: () => true\n });\n }\n\n return symbolMark;\n }\n\n initLabelMarkStyle(labelMark?: ILabelMark) {\n if (!labelMark) {\n return;\n }\n if (labelMark.getTarget()?.type !== 'symbol') {\n labelMark.setRule('line-data');\n }\n this.setMarkStyle(labelMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getStackValueField()];\n },\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n });\n\n if (this._invalidType !== 'zero') {\n this.setMarkStyle(\n labelMark,\n {\n visible: this._getInvalidDefined\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n\n this.event.on(ChartEvent.viewDataStatisticsUpdate, { filter: param => param.model === this }, () => {\n this.encodeDefined(labelMark, 'visible');\n });\n }\n\n initLineLabelMarkStyle(labelMark?: ILabelMark) {\n if (!labelMark) {\n return;\n }\n\n this.setMarkStyle(labelMark, {\n fill: this.getColorAttribute(),\n text: (datum: Datum) => {\n return datum[this.getSeriesField()];\n },\n z: this._fieldZ ? this.dataToPositionZ.bind(this) : null\n });\n }\n\n encodeDefined(mark: IMark, attr: string) {\n if (!mark) {\n return;\n }\n const statistics = this.getViewDataStatistics()?.latestData?.[this.getStackValueField()];\n if (this._invalidType === 'zero' || (statistics && statistics?.allValid)) {\n if (mark.stateStyle.normal?.[attr]?.style === true) {\n // no change\n return;\n }\n this.setMarkStyle(mark, { [attr]: true }, 'normal', AttributeLevel.Series);\n } else {\n if (mark.stateStyle.normal?.[attr]?.style !== true) {\n // no change\n return;\n }\n this.setMarkStyle(mark, { [attr]: this._getInvalidDefined }, 'normal', AttributeLevel.Series);\n }\n // if has produce, reCompile encode to set attribute to product\n if (mark.getProduct()) {\n mark.compileEncode();\n }\n }\n}\n"]}
|
|
@@ -28,7 +28,7 @@ class Pie3dSeries extends pie_1.BasePieSeries {
|
|
|
28
28
|
const params3d = {};
|
|
29
29
|
textMark.setSupport3d(!0), params3d.beta = this._angle3d, params3d.anchor3d = datum => {
|
|
30
30
|
var _a, _b, _c, _d;
|
|
31
|
-
return [ null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.
|
|
31
|
+
return [ null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().width / 2, null !== (_d = null === (_c = this._center) || void 0 === _c ? void 0 : _c.y) && void 0 !== _d ? _d : this._region.getLayoutRectExcludeIndent().height / 2 ];
|
|
32
32
|
}, params3d.angle = datum => {
|
|
33
33
|
var _a;
|
|
34
34
|
const angle = datum[constant_1.ARC_MIDDLE_ANGLE];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/pie/3d/pie-3d.ts"],"names":[],"mappings":";;;AAAA,gDAAqE;AAErE,uDAA4D;AAE5D,+CAA0E;AAG1E,iDAAyD;AACzD,gCAAuC;AACvC,0CAA8C;AAC9C,6CAAkD;AAClD,mDAAgD;AAChD,sDAAgE;AAChE,6DAAkE;AAGlE,MAAa,WAA2D,SAAQ,mBAAgB;IAAhG;;QAEE,SAAI,GAAG,qBAAc,CAAC,KAAK,CAAC;QAClB,iBAAY,GAAuB,yBAAkB,CAAC,KAAK,CAAC;QAC5D,iBAAY,GAAiB,mBAAY,CAAC,KAAK,CAAC;QAIjD,2BAAsB,GAAG,+CAAiC,CAAC;IAmDtE,CAAC;IA/CC,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,mCAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,aAAa;QACX,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,YAAY,CACf,OAAO,EACP;gBACE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ;aAC1B,EACD,QAAQ,EACR,yBAAc,CAAC,MAAM,CACtB,CAAC;SACH;IACH,CAAC;IAED,kBAAkB,CAAC,QAAmB;QACpC,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO;SACR;QACD,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEnC,MAAM,QAAQ,GAIV,EAAE,CAAC;QACP,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,QAAQ,CAAC,QAAQ,GAAG,CAAC,KAAY,EAAE,EAAE;;YACnC,MAAM,MAAM,GAAG;gBAEb,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,CAAC,mCAAI,IAAI,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/series/pie/3d/pie-3d.ts"],"names":[],"mappings":";;;AAAA,gDAAqE;AAErE,uDAA4D;AAE5D,+CAA0E;AAG1E,iDAAyD;AACzD,gCAAuC;AACvC,0CAA8C;AAC9C,6CAAkD;AAClD,mDAAgD;AAChD,sDAAgE;AAChE,6DAAkE;AAGlE,MAAa,WAA2D,SAAQ,mBAAgB;IAAhG;;QAEE,SAAI,GAAG,qBAAc,CAAC,KAAK,CAAC;QAClB,iBAAY,GAAuB,yBAAkB,CAAC,KAAK,CAAC;QAC5D,iBAAY,GAAiB,mBAAY,CAAC,KAAK,CAAC;QAIjD,2BAAsB,GAAG,+CAAiC,CAAC;IAmDtE,CAAC;IA/CC,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,mCAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,aAAa;QACX,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,YAAY,CACf,OAAO,EACP;gBACE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ;aAC1B,EACD,QAAQ,EACR,yBAAc,CAAC,MAAM,CACtB,CAAC;SACH;IACH,CAAC;IAED,kBAAkB,CAAC,QAAmB;QACpC,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO;SACR;QACD,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAEnC,MAAM,QAAQ,GAIV,EAAE,CAAC;QACP,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,QAAQ,CAAC,QAAQ,GAAG,CAAC,KAAY,EAAE,EAAE;;YACnC,MAAM,MAAM,GAAG;gBAEb,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,CAAC,mCAAI,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,KAAK,GAAG,CAAC;gBACtE,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,CAAC,mCAAI,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,MAAM,GAAG,CAAC;aACxE,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QACF,QAAQ,CAAC,KAAK,GAAG,CAAC,KAAY,EAAE,EAAE;;YAChC,MAAM,KAAK,GAAG,KAAK,CAAC,2BAAgB,CAAC,CAAC;YACtC,OAAO,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,KAAK,0CAAE,QAAQ,MAAK,QAAQ,CAAC,CAAC,CAAC,IAAA,uBAAc,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,QAAQ,kCAAO,QAAQ,KAAE,CAAC,EAAE,GAAG,KAAI,SAAS,EAAE,yBAAc,CAAC,IAAI,CAAC,CAAC;IACvF,CAAC;;AA1DH,kCA2DC;AA1DiB,gBAAI,GAAW,qBAAc,CAAC,KAAK,CAAC;AAKpC,gBAAI,GAAkB,0BAAe,CAAC;AACtC,kCAAsB,GAAG,+CAAiC,CAAC;AAsDtE,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,IAAA,kCAAsB,GAAE,CAAC;IACzB,IAAA,0BAAiB,GAAE,CAAC;IACpB,iBAAO,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC,CAAC;AAJW,QAAA,mBAAmB,uBAI9B","file":"pie-3d.js","sourcesContent":["import { AttributeLevel, ARC_MIDDLE_ANGLE } from '../../../constant';\nimport type { Datum } from '../../../typings';\nimport { MarkTypeEnum } from '../../../mark/interface/type';\nimport type { IArcSeries, SeriesMarkMap } from '../../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../../interface/type';\n// eslint-disable-next-line no-duplicate-imports\nimport type { IPie3dSeriesSpec } from '../interface';\nimport { registerArc3dMark } from '../../../mark/arc-3d';\nimport { BasePieSeries } from '../pie';\nimport { pie3dSeriesMark } from '../constant';\nimport { radianToDegree } from '@visactor/vutils';\nimport { Factory } from '../../../core/factory';\nimport { registerPie3dAnimation } from '../animation/animation';\nimport { Pie3dSeriesSpecTransformer } from './pie-3d-transformer';\nimport type { ITextMark } from '../../../mark/text';\n\nexport class Pie3dSeries<T extends IPie3dSeriesSpec = IPie3dSeriesSpec> extends BasePieSeries<T> implements IArcSeries {\n static readonly type: string = SeriesTypeEnum.pie3d;\n type = SeriesTypeEnum.pie3d;\n protected _pieMarkName: SeriesMarkNameEnum = SeriesMarkNameEnum.pie3d;\n protected _pieMarkType: MarkTypeEnum = MarkTypeEnum.arc3d;\n\n static readonly mark: SeriesMarkMap = pie3dSeriesMark;\n static readonly transformerConstructor = Pie3dSeriesSpecTransformer as any;\n readonly transformerConstructor = Pie3dSeriesSpecTransformer as any;\n\n protected _angle3d: number;\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n this._angle3d = this._spec?.angle3d ?? -Math.PI / 3;\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n const pieMark = this._pieMark;\n if (pieMark) {\n this.setMarkStyle(\n pieMark,\n {\n beta: () => this._angle3d\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n }\n\n initLabelMarkStyle(textMark: ITextMark): void {\n if (!textMark) {\n return;\n }\n super.initLabelMarkStyle(textMark);\n\n const params3d: {\n beta?: number;\n anchor3d?: (datum: Datum) => any;\n angle?: (datum: Datum) => any;\n } = {};\n textMark.setSupport3d(true);\n params3d.beta = this._angle3d;\n params3d.anchor3d = (datum: Datum) => {\n const anchor = [\n // TODO: label 布局依赖自身图元属性,这里无法获取到\n this._center?.x ?? this._region.getLayoutRectExcludeIndent().width / 2,\n this._center?.y ?? this._region.getLayoutRectExcludeIndent().height / 2\n ];\n return anchor;\n };\n params3d.angle = (datum: Datum) => {\n const angle = datum[ARC_MIDDLE_ANGLE];\n return this._spec.label?.position === 'inside' ? radianToDegree(angle) : 0;\n };\n this.setMarkStyle(textMark, { ...params3d, z: 100 }, undefined, AttributeLevel.Mark);\n }\n}\n\nexport const registerPie3dSeries = () => {\n registerPie3dAnimation();\n registerArc3dMark();\n Factory.registerSeries(Pie3dSeries.type, Pie3dSeries);\n};\n"]}
|
package/cjs/series/pie/pie.js
CHANGED
|
@@ -28,19 +28,19 @@ class BasePieSeries extends polar_1.PolarSeries {
|
|
|
28
28
|
get center() {
|
|
29
29
|
var _a, _b, _c, _d;
|
|
30
30
|
return {
|
|
31
|
-
x: null !== (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.centerX) && void 0 !== _b ? _b : this._region.
|
|
32
|
-
y: null !== (_d = null === (_c = this._spec) || void 0 === _c ? void 0 : _c.centerY) && void 0 !== _d ? _d : this._region.
|
|
31
|
+
x: null !== (_b = null === (_a = this._spec) || void 0 === _a ? void 0 : _a.centerX) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().width / 2,
|
|
32
|
+
y: null !== (_d = null === (_c = this._spec) || void 0 === _c ? void 0 : _c.centerY) && void 0 !== _d ? _d : this._region.getLayoutRectExcludeIndent().height / 2
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
_buildMarkAttributeContext() {
|
|
36
36
|
super._buildMarkAttributeContext(), this._markAttributeContext.getCenter = () => ({
|
|
37
37
|
x: () => {
|
|
38
38
|
var _a, _b;
|
|
39
|
-
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.
|
|
39
|
+
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().width / 2;
|
|
40
40
|
},
|
|
41
41
|
y: () => {
|
|
42
42
|
var _a, _b;
|
|
43
|
-
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.y) && void 0 !== _b ? _b : this._region.
|
|
43
|
+
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.y) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().height / 2;
|
|
44
44
|
}
|
|
45
45
|
}), this._markAttributeContext.startAngleScale = datum => this.startAngleScale(datum),
|
|
46
46
|
this._markAttributeContext.endAngleScale = datum => this.endAngleScale(datum);
|
|
@@ -55,7 +55,7 @@ class BasePieSeries extends polar_1.PolarSeries {
|
|
|
55
55
|
this._startAngle = normalized.startAngle, this._endAngle = normalized.endAngle,
|
|
56
56
|
this._padAngle = (0, vutils_1.isValid)(this._spec.padAngle) ? (0, vutils_1.degreeToRadian)(this._spec.padAngle) : 0,
|
|
57
57
|
this.setAngleField(this._spec.valueField || this._spec.angleField), this._spec.categoryField && this.setSeriesField(this._spec.categoryField),
|
|
58
|
-
this._radiusField = [];
|
|
58
|
+
this._radiusField = [], this._specAngleField = this._angleField.slice(), this._specRadiusField = [];
|
|
59
59
|
}
|
|
60
60
|
initData() {
|
|
61
61
|
super.initData();
|
|
@@ -111,11 +111,11 @@ class BasePieSeries extends polar_1.PolarSeries {
|
|
|
111
111
|
pieMark && (this.setMarkStyle(pieMark, {
|
|
112
112
|
x: () => {
|
|
113
113
|
var _a, _b;
|
|
114
|
-
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.
|
|
114
|
+
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.x) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().width / 2;
|
|
115
115
|
},
|
|
116
116
|
y: () => {
|
|
117
117
|
var _a, _b;
|
|
118
|
-
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.y) && void 0 !== _b ? _b : this._region.
|
|
118
|
+
return null !== (_b = null === (_a = this._center) || void 0 === _a ? void 0 : _a.y) && void 0 !== _b ? _b : this._region.getLayoutRectExcludeIndent().height / 2;
|
|
119
119
|
},
|
|
120
120
|
fill: this.getColorAttribute(),
|
|
121
121
|
outerRadius: (0, scale_1.isSpecValueWithScale)(this._outerRadius) ? this._outerRadius : () => this.computeLayoutRadius() * this._outerRadius,
|
|
@@ -163,7 +163,7 @@ class BasePieSeries extends polar_1.PolarSeries {
|
|
|
163
163
|
return this._seriesField ? [ this._seriesField ] : [];
|
|
164
164
|
}
|
|
165
165
|
getMeasureField() {
|
|
166
|
-
return this.
|
|
166
|
+
return this._specAngleField;
|
|
167
167
|
}
|
|
168
168
|
viewDataLabelUpdate() {
|
|
169
169
|
this.event.emit(constant_1.ChartEvent.viewDataLabelUpdate, {
|
|
@@ -179,7 +179,7 @@ class BasePieSeries extends polar_1.PolarSeries {
|
|
|
179
179
|
style;
|
|
180
180
|
}
|
|
181
181
|
computeLayoutRadius() {
|
|
182
|
-
const {width: width, height: height} = this._region.
|
|
182
|
+
const {width: width, height: height} = this._region.getLayoutRectExcludeIndent();
|
|
183
183
|
return Math.min(width / 2, height / 2);
|
|
184
184
|
}
|
|
185
185
|
computeCenter(datum) {
|