Skip to content

TrendLineUtils

ClassChartGuruChartGuru
public static class TrendLineUtils

Utility class for calculating regression trend lines from data points. Supports linear, polynomial (degree 2-6), exponential, logarithmic, and power regressions.

public const int MaxPolynomialDegree = 6

Maximum polynomial degree allowed to avoid numerical instability.

Returns

System.Int32 — No return description is available.

CalculateLinearRegression(float[], float[])

Section titled “CalculateLinearRegression(float[], float[])”
public static LinearRegressionResult CalculateLinearRegression(float[] x, float[] y)

Calculates linear regression (y = a + bx) using least squares method.

Parameters

Name Type Description
x System.Single[] Array of x values.
y System.Single[] Array of y Values (must be same length as x).

Returns

ChartGuru.LinearRegressionResult — Linear regression result with slope, intercept, and R².

public static LinearRegressionResult CalculateLinearRegression(IList<DataPoint> points)

Calculates linear regression from a list of data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint}

Returns

ChartGuru.LinearRegressionResult — No return description is available.

public static LinearRegressionResult CalculateLinearRegression(IList<Vector2> points)

Calculates linear regression from a list of Vector2 points.

Parameters

Name Type Description
points System.Collections.Generic.IList{UnityEngine.Vector2}

Returns

ChartGuru.LinearRegressionResult — No return description is available.

CalculateLinearRegression3D(float[], float[], float[])

Section titled “CalculateLinearRegression3D(float[], float[], float[])”
public static LinearRegression3D CalculateLinearRegression3D(float[] x, float[] y, float[] z)

Calculates bivariate linear regression for a 3D trend surface. Fits y = a + bx + cz using least squares.

Parameters

Name Type Description
x System.Single[]
y System.Single[]
z System.Single[]

Returns

ChartGuru.LinearRegression3D — No return description is available.

public static LinearRegression3D CalculateLinearRegression3D(IList<DataPoint3D> points)

Calculates bivariate linear regression from a list of 3D data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint3D}

Returns

ChartGuru.LinearRegression3D — No return description is available.

public static LinearRegression3D CalculateLinearRegression3D(IList<Vector3> points)

Calculates bivariate linear regression from a list of Vector3 points.

Parameters

Name Type Description
points System.Collections.Generic.IList{UnityEngine.Vector3}

Returns

ChartGuru.LinearRegression3D — No return description is available.

CalculatePolynomialRegression(float[], float[], int)

Section titled “CalculatePolynomialRegression(float[], float[], int)”
public static PolynomialRegressionResult CalculatePolynomialRegression(float[] x, float[] y, int degree)

Calculates polynomial regression using least squares method. Degree is capped at 6 to avoid numerical instability.

Parameters

Name Type Description
x System.Single[] Array of x values.
y System.Single[] Array of y Values (must be same length as x).
degree System.Int32 Polynomial degree (2-6, will be clamped).

Returns

ChartGuru.PolynomialRegressionResult — Polynomial regression result with coefficients and R².

public static PolynomialRegressionResult CalculatePolynomialRegression(IList<DataPoint> points, int degree)

Calculates polynomial regression from a list of data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint}
degree System.Int32

Returns

ChartGuru.PolynomialRegressionResult — No return description is available.

CalculateExponentialRegression(float[], float[])

Section titled “CalculateExponentialRegression(float[], float[])”
public static ExponentialRegressionResult CalculateExponentialRegression(float[] x, float[] y)

Calculates exponential regression (y = a·e^(bx)) using linearization. Requires all y values to be positive.

Parameters

Name Type Description
x System.Single[] Array of x values.
y System.Single[] Array of y Values (must be positive).

Returns

ChartGuru.ExponentialRegressionResult — Exponential regression result with coefficients and R².

public static ExponentialRegressionResult CalculateExponentialRegression(IList<DataPoint> points)

Calculates exponential regression from a list of data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint}

Returns

ChartGuru.ExponentialRegressionResult — No return description is available.

CalculateLogarithmicRegression(float[], float[])

Section titled “CalculateLogarithmicRegression(float[], float[])”
public static LogarithmicRegressionResult CalculateLogarithmicRegression(float[] x, float[] y)

Calculates logarithmic regression (y = a + b·ln(x)) using linearization. Requires all x values to be positive.

Parameters

Name Type Description
x System.Single[] Array of x Values (must be positive).
y System.Single[] Array of y values.

Returns

ChartGuru.LogarithmicRegressionResult — Logarithmic regression result with coefficients and R².

public static LogarithmicRegressionResult CalculateLogarithmicRegression(IList<DataPoint> points)

Calculates logarithmic regression from a list of data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint}

Returns

ChartGuru.LogarithmicRegressionResult — No return description is available.

CalculatePowerRegression(float[], float[])

Section titled “CalculatePowerRegression(float[], float[])”
public static PowerRegressionResult CalculatePowerRegression(float[] x, float[] y)

Calculates power regression (y = a·x^b) using log-log linearization. Requires all x and y values to be positive.

Parameters

Name Type Description
x System.Single[] Array of x Values (must be positive).
y System.Single[] Array of y Values (must be positive).

Returns

ChartGuru.PowerRegressionResult — Power regression result with coefficients and R².

public static PowerRegressionResult CalculatePowerRegression(IList<DataPoint> points)

Calculates power regression from a list of data points.

Parameters

Name Type Description
points System.Collections.Generic.IList{ChartGuru.DataPoint}

Returns

ChartGuru.PowerRegressionResult — No return description is available.