私は pivotable.js ライブラリを使用しています。この pivotable.jsでは、すべてのセル値の合計ではなく、合計列にすべてのセルの平均値を表示したいと考えています。下の画像を見てください。pivottable.js で値を表示する方法を示しています。
var average = $.pivotUtilities.aggregatorTemplates.average;
var numberFormat = $.pivotUtilities.numberFormat;
var intFormat = numberFormat({digitsAfterDecimal: 1});
$("#output").pivot(
[
{color: "green", shape: "null", value: 0},
{color: "blue", shape: "circle", value: 1},
{color: "red", shape: "triangle", value: 2},
{color: "red", shape: "triangle", value: 12},
{color: "blue", shape: "circle", value: 3},
{color: "blue", shape: "triangle", value: 12}
],
{
rows: ["color"],
cols: ["shape"],
aggregator: average(intFormat)(["value"])
}
);
どうすればこれを達成できるか教えてください。ここにフィドルがあります
https://jsfiddle.net/dky0hh1y/5/
私のカスタムアグリゲーター
var successRate = function() {
return function() {
return {
sumSuccesses: 0,
sumTrials: 0,
push: function(record) {
if (!isNaN(parseFloat(record.student))) {
this.sumSuccesses += parseFloat(record.student);
}
},
value: function() { return this.sumSuccesses },
format: function(x) { return x; },
numInputs: 0
};
};
};
ありがとう