File Exchange

image thumbnail

Orthogonal Linear Regression in 3D-space by using Principal Components Analysis

version 1.3 (2.49 KB) by

Orthogonal Linear Regression by using PCA



View License

Orthogonal Linear Regression in 3D-space by using Principal Components Analysis

This is a wrapper function to some pieces of the code from the Statistics Toolbox demo titled "Fitting an Orthogonal Regression Using Principal Components Analysis"
which is Copyright by the MathWorks, Inc.

Input parameters:
 - XData: input data block -- x: axis
 - YData: input data block -- y: axis
 - ZData: input data block -- z: axis
 - geometry: type of approximation ('line','plane')
 - visualization: figure ('on','off') -- default is 'on'
 - sod: show orthogonal distances ('on','off') -- default is 'on'

Return parameters:
 - Err: error of approximation - sum of orthogonal distances
 - N: normal vector for plane, direction vector for line
 - P: point on plane or line in 3D space


>> XD = [4.8 6.7 6.2 6.2 4.1 1.9 2.0]';
>> YD = [13.4 9.9 5.8 6.1 6.7 10.6 11.5]';
>> ZD = [13.7 13.1 11.3 11.8 12.5 16.2 18.5]';
>> fit_3D_data(XD,YD,ZD,'line','on','on');
>> fit_3D_data(XD,YD,ZD,'plane','on','off');

Note: Written for Matlab 7.0 (R14) with Statistics Toolbox

We sincerely thank Peter Perkins, the author of the demo, and John D'Errico for their comments.

Ivo Petras, Igor Podlubny, May 2006

An example of application can be found at:

For additional codes for the Orthogonal Linear Regression also known as Total Least Squares Method see link:

Comments and Ratings (0)



Updated description. Added screenshot.

Updated description

Fixing the misunderstanding around the reuse of some pieces of the code from Peter Perkins's demo.

Updated description, spelling correction.

Some minor errors correction.

MATLAB Release
MATLAB 7 (R14)

Inspired: Total Least Squares Method

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video