MCPcopy
hub / github.com/chartjs/Chart.js / updateStacks

Function updateStacks

src/core/core.datasetController.js:152–175  ·  view source on GitHub ↗
(controller, parsed)

Source from the content-addressed store, hash-verified

150}
151
152function updateStacks(controller, parsed) {
153 const {chart, _cachedMeta: meta} = controller;
154 const stacks = chart._stacks || (chart._stacks = {}); // map structure is {stackKey: {datasetIndex: value}}
155 const {iScale, vScale, index: datasetIndex} = meta;
156 const iAxis = iScale.axis;
157 const vAxis = vScale.axis;
158 const key = getStackKey(iScale, vScale, meta);
159 const ilen = parsed.length;
160 let stack;
161
162 for (let i = 0; i < ilen; ++i) {
163 const item = parsed[i];
164 const {[iAxis]: index, [vAxis]: value} = item;
165 const itemStacks = item._stacks || (item._stacks = {});
166 stack = itemStacks[vAxis] = getOrCreateStack(stacks, key, index);
167 stack[datasetIndex] = value;
168
169 stack._top = getLastIndexInStack(stack, vScale, true, meta.type);
170 stack._bottom = getLastIndexInStack(stack, vScale, false, meta.type);
171
172 const visualValues = stack._visualValues || (stack._visualValues = {});
173 visualValues[datasetIndex] = value;
174 }
175}
176
177function getFirstScaleId(chart, axis) {
178 const scales = chart.scales;

Callers 2

buildOrUpdateElementsMethod · 0.85
parseMethod · 0.85

Calls 3

getStackKeyFunction · 0.85
getOrCreateStackFunction · 0.85
getLastIndexInStackFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…