_addRegressionLine: function()

in MotionMark/resources/debug-runner/graph.js [62:94]


    _addRegressionLine: function(parent, xScale, yScale, points, range, isAlongYAxis)
    {
        var polygon = [];
        var line = []
        var xRange = isAlongYAxis ? range : 0;
        var yRange = isAlongYAxis ? 0 : range;
        for (var i = 0; i < points.length; ++i) {
            var point = points[i];
            var x;
            if (xRange instanceof Array)
                x = xRange[0];
            else
                x = point[0] + xRange;
            polygon.push(xScale(x), yScale(point[1] + yRange));
            line.push(xScale(point[0]), yScale(point[1]));
        }
        for (var i = points.length - 1; i >= 0; --i) {
            var point = points[i];
            var x;
            if (xRange instanceof Array)
                x = xRange[1];
            else
                x = point[0] - xRange;
            polygon.push(xScale(x), yScale(point[1] - yRange));
        }
        parent.append("polygon")
            .attr("points", polygon.join(","));
        parent.append("line")
            .attr("x1", line[0])
            .attr("y1", line[1])
            .attr("x2", line[2])
            .attr("y2", line[3]);
    },