addFitLine
                    Version 1.34.0.0 (2.34 KB) by  
                  Rob Campbell
                
                
                  A convenience function to superimpose a polynomial fit to already plotted data
                
                  
              ** 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)
 Purpose
 Add one or more fit lines to some or all data in axes "ax" or,
 without ax specified, to the current axes.
 Inputs
 *poolFits [optional 0 by default] -
 if 1 we fit a single line to all data series on the current
 axes.
 *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]
 Outputs
 out - the fit parameters and plot handles
 Examples
 clf
 %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')
 H=addFitLine
 %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')
 H=addFitLine(1)
 %Fit one quadratic
 subplot(1,3,3)
 x=-5:0.1:5;
 y=2+0.3*x+0.5*x.^2+randn(size(x))*2;
 plot(x,y,'.k')
 addFitLine([],'quadratic')
 OR:
 addFitLine([],2)
 Rob Campbell - December 2009
Cite As
Rob Campbell (2025). addFitLine (https://ch.mathworks.com/matlabcentral/fileexchange/26323-addfitline), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
              Created with
              R2022a
            
            
              Compatible with R2011b to R2022a
            
          Platform Compatibility
Windows macOS LinuxCategories
      Find more on Linear and Nonlinear Regression in Help Center and MATLAB Answers
    
  Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
| Version | Published | Release Notes | |
|---|---|---|---|
| 1.34.0.0 | Polynomial fit plot now produces a line that is the same color as the data points. | ||
| 1.33.0.0 | Fix bug in polyfit section: x data were being sorted but not y data.
 | ||
| 1.31.0.0 | clarify what this function does | ||
| 1.3.0.0 | Correct indexing bug | ||
| 1.2.0.0 | the polynomial fit was not return plot handles | ||
| 1.1.0.0 | Improved error checking: removes text and patch elements before acquiring plot data. 
 | ||
| 1.0.0.0 | 
