MCPcopy
hub / github.com/apache/echarts / ScatterView

Class ScatterView

src/chart/scatter/ScatterView.ts:35–123  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

33import { ISymbolDraw, SymbolDrawUpdateOpt } from '../helper/baseDraw';
34
35class ScatterView extends ChartView {
36 static readonly type = 'scatter';
37 type = ScatterView.type;
38
39 _finished: boolean;
40
41 _isLargeDraw: boolean;
42
43 _symbolDraw: ISymbolDraw;
44
45 render(seriesModel: ScatterSeriesModel, ecModel: GlobalModel, api: ExtensionAPI) {
46 const data = seriesModel.getData();
47
48 const symbolDraw = this._updateSymbolDraw(data, seriesModel);
49
50 symbolDraw.updateData(data, createSymbolDrawOpt(seriesModel));
51
52 this._finished = true;
53 }
54
55 incrementalPrepareRender(seriesModel: ScatterSeriesModel, ecModel: GlobalModel, api: ExtensionAPI) {
56 const data = seriesModel.getData();
57 const symbolDraw = this._updateSymbolDraw(data, seriesModel);
58
59 symbolDraw.incrementalPrepareUpdate(data);
60
61 this._finished = false;
62 }
63
64 incrementalRender(taskParams: TaskProgressParams, seriesModel: ScatterSeriesModel, ecModel: GlobalModel) {
65 this._symbolDraw.incrementalUpdate(
66 taskParams, seriesModel.getData(), getIncrementalId(seriesModel), createSymbolDrawOpt(seriesModel)
67 );
68
69 this._finished = taskParams.end === seriesModel.getData().count();
70 }
71
72 /**
73 * See also VIEW_COORD_SYS_ANIMATION
74 */
75 updateTransform(seriesModel: ScatterSeriesModel, ecModel: GlobalModel, api: ExtensionAPI) {
76 const data = seriesModel.getData();
77 // Must mark group dirty and make sure the incremental layer will be cleared
78 // PENDING
79 this.group.dirty();
80
81 if (!this._finished) { // FIXME: _finished checking is unnecessary?
82 return {update: true} as const;
83 }
84 else {
85 const res = pointsLayout('').reset(seriesModel, ecModel, api) as StageHandlerProgressExecutor;
86 if (res.progress) {
87 res.progress({ start: 0, end: data.count(), count: data.count() }, data);
88 }
89
90 this._symbolDraw.updateLayout(createSymbolDrawOpt(seriesModel));
91 }
92 }

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…