|
31 | 31 | var regressionType = s.regressionSettings.type || "linear"; |
32 | 32 | var regression; |
33 | 33 | var extraSerie = s.regressionSettings.regressionSeriesOptions; |
34 | | - |
| 34 | + |
35 | 35 | // Set default values |
36 | 36 | extraSerie.data = []; |
37 | 37 | extraSerie.isRegressionLine = true; |
|
81 | 81 | regression = _polynomial(mergedData, order, extrapolate); |
82 | 82 | } else if (regressionType == "power") { |
83 | 83 | var extrapolate = s.regressionSettings.extrapolate || 0; |
84 | | - regression = _power(mergedData, extrapolate); |
| 84 | + regression = _power(mergedData, s.regressionSettings.decimalPlaces, extrapolate); |
85 | 85 | } else if (regressionType == "logarithmic") { |
86 | 86 | var extrapolate = s.regressionSettings.extrapolate || 0; |
87 | 87 | regression = _logarithmic(mergedData, extrapolate); |
|
337 | 337 | /** |
338 | 338 | * Code extracted from https://github.com/Tom-Alexander/regression-js/ |
339 | 339 | */ |
340 | | - function _power(data, extrapolate) { |
| 340 | + function _power(data, decimalPlaces, extrapolate) { |
341 | 341 | var sum = [0, 0, 0, 0], n = 0, results = []; |
342 | 342 |
|
343 | 343 | for (len = data.length; n < len; n++) { |
|
381 | 381 | return 0; |
382 | 382 | }); |
383 | 383 |
|
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); |
385 | 385 |
|
386 | 386 | return {equation: [A, B], points: results, string: string}; |
387 | 387 | } |
|
0 commit comments