Orthogonal Linear Regression

Fit data using orthogonal linear regression.

You are now following this Submission

LINORTFIT2(X,Y) finds the coefficients of a 1st-order polynomial that best fits the data (X,Y) in an ORTHOGONAL least-squares sense. Consider the line P(1)*t + P(2), and the minimum (Euclidean) distance between this line and each datapoint [X(i) Y(i)] -- LINORTFIT2 finds P(1) and P(2) such that the sum of squared distances is minimized.

LINORTFITN(DATA) finds the coefficients of a hyperplane (in Hessian normal form) that best fits the data in an ORTHOGONAL least-squares sense. Consider the hyperplane
H = {x | dot(N,x) + C == 0},
and the minimum (Euclidean) distance between this hyperplane and each datapoint DATA(i,:) -- LINORTFITN finds N and C such that the sum of squared distances is minimized.

There is already a file in Matlab Central for orthogonal linear regression in 2 dimensions, but it uses FMINSEARCH (i.e., unconstrained nonlinear optimization by Nelder-Mead simplex search) versus this simpler, numerically stable, multidimensional version based on SVD approximation.

Cite As

F. Carr (2026). Orthogonal Linear Regression (https://www.mathworks.com/matlabcentral/fileexchange/16800-orthogonal-linear-regression), MATLAB Central File Exchange. Retrieved .

Acknowledgements

Inspired by: Orthogonal Linear Regression

Categories

Find more on Interpolation in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0