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

Function setDecal

src/visual/aria.ts:65–136  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

63 setLabel();
64
65 function setDecal() {
66 const decalModel = ariaModel.getModel('decal');
67
68 const useDecal = decalModel.get('show');
69 if (useDecal) {
70
71 // Each type of series use one scope.
72 // Pie and funnel are using different scopes.
73 const paletteScopeGroupByType = zrUtil.createHashMap<object, SeriesModel['type']>();
74 ecModel.eachSeries((seriesModel: SeriesModel) => {
75 if (!seriesModel.isColorBySeries()) {
76 innerSeries(seriesModel).scope = paletteScopeGroupByType.get(seriesModel.type)
77 || paletteScopeGroupByType.set(seriesModel.type, {});
78 }
79 });
80
81 ecModel.eachSeries((seriesModel: SeriesModel) => {
82 if (zrUtil.isFunction(seriesModel.enableAriaDecal)) {
83 // Let series define how to use decal palette on data
84 seriesModel.enableAriaDecal();
85 return;
86 }
87
88 const data = seriesModel.getData();
89
90 if (!seriesModel.isColorBySeries()) {
91 const dataAll = seriesModel.getRawData();
92 const idxMap: Dictionary<number> = {};
93 const decalScope = innerSeries(seriesModel).scope;
94
95 data.each(function (idx) {
96 const rawIdx = data.getRawIndex(idx);
97 idxMap[rawIdx] = idx;
98 });
99
100 const dataCount = dataAll.count();
101 dataAll.each(rawIdx => {
102 const idx = idxMap[rawIdx];
103 const name = dataAll.getName(rawIdx) || (rawIdx + '');
104 const paletteDecal = getDecalFromPalette(
105 seriesModel.ecModel,
106 name,
107 decalScope,
108 dataCount
109 );
110 const specifiedDecal = data.getItemVisual(idx, 'decal');
111 data.setItemVisual(idx, 'decal', mergeDecal(specifiedDecal, paletteDecal));
112 });
113 }
114 else {
115 const paletteDecal = getDecalFromPalette(
116 seriesModel.ecModel,
117 seriesModel.name,
118 decalPaletteScope,
119 ecModel.getSeriesCount()
120 );
121 const specifiedDecal = data.getVisual('decal');
122 data.setVisual('decal', mergeDecal(specifiedDecal, paletteDecal));

Callers 1

ariaVisualFunction · 0.85

Calls 15

getDecalFromPaletteFunction · 0.90
mergeDecalFunction · 0.85
eachSeriesMethod · 0.80
isColorBySeriesMethod · 0.80
getNameMethod · 0.80
setItemVisualMethod · 0.80
getSeriesCountMethod · 0.80
enableAriaDecalMethod · 0.65
getDataMethod · 0.65
getRawIndexMethod · 0.65
countMethod · 0.65
getVisualMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…