UNPKG

@formant/ava

Version:

A framework for automated visual analytics.

32 lines (31 loc) 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.trendStrategy = exports.trendAugmentedMarksStrategy = void 0; var tslib_1 = require("tslib"); var commonMarks_1 = require("../commonMarks"); var chart_1 = require("../chart"); var utils_1 = require("../../../../utils"); var trendAugmentedMarksStrategy = function (insight) { var chartData = insight.data, _a = tslib_1.__read(insight.dimensions, 1), dimensionName = _a[0].fieldName, patterns = insight.patterns; var points = chartData.map(function (datum, index) { var points = patterns[0].regression.points; var point = points[index]; return [datum[dimensionName], point]; }); var _b = tslib_1.__read(patterns[0].regression.equation, 2), m = _b[0], c = _b[1]; var lineData = points.map(function (point) { return ({ x: point[0], y: point[1] }); }); var regressionLineMark = (0, commonMarks_1.lineMarkStrategy)({ points: lineData }, { label: "y=".concat((0, utils_1.dataFormat)(m), "x").concat(c < 0 ? '' : '+').concat((0, utils_1.dataFormat)(c)) }); return [ { trendLine: [regressionLineMark], }, ]; }; exports.trendAugmentedMarksStrategy = trendAugmentedMarksStrategy; var trendStrategy = function (insight) { var _a, _b; var chart = (0, chart_1.insight2ChartStrategy)(insight); var trendMarks = (0, exports.trendAugmentedMarksStrategy)(insight); return tslib_1.__spreadArray([chart], tslib_1.__read(((_b = (_a = trendMarks[0]) === null || _a === void 0 ? void 0 : _a.trendLine) !== null && _b !== void 0 ? _b : [])), false); }; exports.trendStrategy = trendStrategy;