Skip to content

Commit 4012562

Browse files
committed
Add rounding option to power regression with exponential for A
4 decimal would result into "y = 1.8087e-5x^2.8897"
1 parent 568326a commit 4012562

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

highcharts-regression.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
var regressionType = s.regressionSettings.type || "linear";
3232
var regression;
3333
var extraSerie = s.regressionSettings.regressionSeriesOptions;
34-
34+
3535
// Set default values
3636
extraSerie.data = [];
3737
extraSerie.isRegressionLine = true;
@@ -81,7 +81,7 @@
8181
regression = _polynomial(mergedData, order, extrapolate);
8282
} else if (regressionType == "power") {
8383
var extrapolate = s.regressionSettings.extrapolate || 0;
84-
regression = _power(mergedData, extrapolate);
84+
regression = _power(mergedData, s.regressionSettings.decimalPlaces, extrapolate);
8585
} else if (regressionType == "logarithmic") {
8686
var extrapolate = s.regressionSettings.extrapolate || 0;
8787
regression = _logarithmic(mergedData, extrapolate);
@@ -337,7 +337,7 @@
337337
/**
338338
* Code extracted from https://github.com/Tom-Alexander/regression-js/
339339
*/
340-
function _power(data, extrapolate) {
340+
function _power(data, decimalPlaces, extrapolate) {
341341
var sum = [0, 0, 0, 0], n = 0, results = [];
342342

343343
for (len = data.length; n < len; n++) {
@@ -381,7 +381,7 @@
381381
return 0;
382382
});
383383

384-
var string = 'y = ' + Math.round(A * 100) / 100 + 'x^' + Math.round(B * 100) / 100;
384+
var string = 'y = ' + A.toExponential(decimalPlaces) + 'x^' + _round(B, decimalPlaces);
385385

386386
return {equation: [A, B], points: results, string: string};
387387
}

0 commit comments

Comments
 (0)