File Exchange

image thumbnail


version 1.31 (2.14 KB) by

A convenience function to superimpose a polynomial fit to already plotted data



View License

** What is it?
This convenience function allows you to quickly add a fit line to data after they have been plotted. e.g.
>> plot(myData)
>> out=addFitLine;
Add fit line returns the fit parameters and handles to the plot objects.

** Details
The stats toolbox is required for the 'linear' and 'quadratic' options only.

function out=addFitLine(poolFits,modelType,lineprops,ax)

  Add one or more fit lines to some or all data in axes "ax" or,
  without ax specified, to the current axes.

   *poolFits [optional 0 by default] -
     if 1 we fit a single line to all data series on the current
   *modelType ['linear' by default] - If 'linear' it fits a straight line
     using the regress function from the stats toolbox. If 'quadratic' it
     fits a second-order polynomial using regress. The output from regress is
     returned. If modelType is an integer, the function fit a polynomial of
     this order using polyfit, which is not part of the stats toolbox. The
     output of polyfit is then returned.
   *lineprops [optional 'b-' by default]
   *ax [optional - gca by default]

  out - the fit parameters and plot handles

  %Fit two seperate lines
  subplot(1,3,1), hold on, x=-5:0.1:5;
  y=1+1*x+randn(size(x))*2; plot(x,y,'.k')
  y=2-4*x+randn(size(x))*2; plot(x,y,'.r')

  %Fit one line to two sets of data
  subplot(1,3,2), hold on
  x=-5:0.2:0; y=0.3*x+randn(size(x))*2; plot(x,y,'.k')
  x=0:0.2:5; y=0.3*x+randn(size(x))*2; plot(x,y,'.r')

  %Fit one quadratic

  Rob Campbell - December 2009

Comments and Ratings (0)



clarify what this function does


Correct indexing bug


the polynomial fit was not return plot handles


Improved error checking: removes text and patch elements before acquiring plot data.
Added ability to fit higher order polynomials using polyfit and polyval.

MATLAB Release
MATLAB 7.8 (R2009a)

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

» Watch video