@formant/ava
Version:
A framework for automated visual analytics.
48 lines (47 loc) • 2.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.changePointStrategy = exports.changePointAugmentedMarksStrategy = void 0;
var tslib_1 = require("tslib");
var lodash_1 = require("lodash");
var constants_1 = require("../../constants");
var utils_1 = require("../../../../utils");
var pointMark_1 = require("../commonMarks/pointMark");
var textMark_1 = require("../commonMarks/textMark");
var chart_1 = require("../chart");
var utils_2 = require("../../utils");
var changePointAugmentedMarksStrategy = function (insight) {
var patterns = insight.patterns;
var color = constants_1.INSIGHT_COLOR_PLATTE.highlight;
if (!(0, lodash_1.size)(patterns))
return [];
var measure = patterns[0].measure;
var changePointMarks = [];
patterns.forEach(function (pattern) {
var pointMark = (0, pointMark_1.pointMarkStrategy)([pattern], { style: { fill: color } });
var textMark = (0, textMark_1.textMarkStrategy)([pattern], {
formatter: utils_1.dataFormat,
label: function (pt) { return "".concat(pt.x, ", ").concat(measure, ": ").concat(pt.y); },
style: {
dy: -20,
background: true,
backgroundRadius: 2,
connector: true,
startMarker: true,
startMarkerFill: '#1c1e2d',
startMarkerFillOpacity: 0.65,
},
});
changePointMarks.push({
changePoint: [pointMark, textMark],
});
});
return changePointMarks;
};
exports.changePointAugmentedMarksStrategy = changePointAugmentedMarksStrategy;
var changePointStrategy = function (insight) {
var chart = (0, chart_1.insight2ChartStrategy)(insight);
var changePointMarks = (0, exports.changePointAugmentedMarksStrategy)(insight);
var marks = (0, utils_2.augmentedMarks2Marks)(changePointMarks);
return tslib_1.__spreadArray([chart], tslib_1.__read(marks), false);
};
exports.changePointStrategy = changePointStrategy;