This tutorial shows how to draw a regression line in SPSS. We encourage you to follow along by downloading and opening job_performance.sav, part of which are shown below.

Our data basically just hold job performance scores and IQ, motivation and social support which -supposedly- contribute to job performance. The meaning of our variables is seen under variable view, part of which is shown below.

For these data, we'd normally inspect all predictors simultaneously by means of multiple regression. This tutorial, however, will be limited to the relation between motivation and job performance. That is, we'll ignore IQ and social support for now.
Regression Line Step 1: Scatterplot
So what does the relation between job performance and motivation look like? The best way to find out is running a scatterplot of these two variables as shown below. After doing so, we'll add a linear regression line to our plot to see whether it reasonably fits our data points.


As shown below, we usually plot the data values of our dependent variable on the y-axis.
You could throw in a title at this point but we'll skip that for now.

SPSS Basic Scatterplot Syntax
Completing the steps shown in the previous screenshots results in the syntax below.
GRAPH
/SCATTERPLOT(BIVAR)=mot WITH perf
/MISSING=LISTWISE.
Step 2: Adding the Regression Line
Double-clicking our scatterplot in the output viewer window will open it in a Chart Editor window. Navigating to immediately adds the desired regression line to our scatterplot. We don't have to change any of the default settings; we can just the dialog.

Result

For a prettier chart, you could manually style it somewhat -again, double-click it for opening the Chart Editor. We tried to create an SPSS chart template for styling our scatterplot with a regression line but the newly added elements weren't affected by it so it didn't work.
But are the Results Correct?
The ease with which we added our regression line without actually running REGRESSION made us a bit suspicious about the results. The syntax below -generated from - should yield a regression equation identical to the one in our scatterplot.
REGRESSION
/MISSING LISTWISE
/STATISTICS COEFF OUTS R ANOVA
/CRITERIA=PIN(.05) POUT(.10)
/NOORIGIN
/DEPENDENT perf
/METHOD=ENTER mot.
Results

We find the r square value in our scatterplot in the Model Summary table (keep in mind that we usually prefer R-square adjusted instead).
,
The unstandardized coefficients in our Coefficients table also correspond to our scatterplot. We can be confident about the regression line we added to it.
Final Note
Now what if I need 10 regression lines? Or 100? I surely don't want to process 100 scatterplots manually. Unfortunately, I didn't find any way for adding them by syntax. If anyone has a suggestion on that, I'd love to hear it!
Thanks for reading!
THIS TUTORIAL HAS 23 COMMENTS:
By Ruben Geert van den Berg on March 1st, 2019
Hi Edward!
Thanks for the examples, very interesting!
However, manually editing GPL is rather cumbersome and time consuming. But you could wrap things up in Python and build a dialog for it.
From SPSS 25 onwards, you can paste GPL for a scatter with a fit line -per group if you like- from the chart builder. I haven't added this to the tutorial yet.
Thanks and keep up the good work!
SPSS tutorials
By Joe Silverman on March 23rd, 2019
Thanks!
Your post answered 95% of my question and helped me fit a line of best fit on a scatter plot in SPSS. I guess there is no way to code "line of best fit" in SPSS, or insert the line of best fit by using the chart builder?
-Joe
By Ruben Geert van den Berg on March 23rd, 2019
Hi Joe!
In SPSS 25, the chart builder includes the option for a scatterplot with a regression line -or even different lines for different groups. The syntax thus generated can't be run in SPSS 24 or previous.
You can use hand written GPL syntax in SPSS 24 to accomplish the same thing but it's quite challenging.
Hope that helps!
SPSS tutorials