SPSS command: SPSS PPLOT
P-P and Q-Q plots in your browser
P-P and Q-Q plots show whether a variable follows a chosen distribution: points on the diagonal mean a good fit.
Free · No account · Files stay on your device · Updated 18 October 2026
What it tells you
Crosstabs follows SPSS PPLOT, estimating the distribution's parameters from the data and plotting against the normal, lognormal, exponential, uniform, logistic, Laplace, Weibull, gamma, beta, Pareto, chi-square or Student's t.
- Whether the data fit the chosen distribution, and where they depart: in the tails (Q-Q) or in the middle (P-P).
- Skewness and heavy tails, from the characteristic bend or S-shape of the points.
- The fitted parameters of the distribution (for example location and scale), estimated as SPSS PPLOT does.
When to use it
Use it when
- Checking normality of a variable or of saved residuals before a t test, ANOVA or regression.
- Choosing a distribution for a simulation input, such as lognormal for durations or Weibull for lifetimes.
Use something else when
- When you need a formal test with a p value: use the Kolmogorov-Smirnov or Shapiro-Wilk tests in Explore or One-Sample Nonparametric Tests.
- Weighted data: PPLOT does not use case weights, so the plot shows the unweighted values.
How to run it in Crosstabs
- 01
Open your data
Open a .sav, CSV or Excel file in the workspace and switch to Statistics mode.
- 02
Choose P-P and Q-Q Plots
In the Utilities and charts group pick P-P and Q-Q Plots and choose the Variable.
- 03
Choose the test distribution
Pick the Test distribution; for chi-square or Student's t also enter the Degrees of freedom.
- 04
Set proportion estimation and ties
Proportion estimation: Blom (SPSS default), Rankit, Tukey or Van der Waerden. Ties: Mean (SPSS default), Low, High or Break ties arbitrarily. Then press Run.
Worked example
Computed by the Crosstabs engine from the synthetic data below when this page was built — not typed in.
Data
30 synthetic response times in seconds, drawn from a lognormal distribution with a fixed seed, so the data are right-skewed. The same column is plotted against the normal and the lognormal distribution.
| Test distribution | Parameter | Value |
|---|---|---|
| Normal | Location | 3.6577 |
| Normal | Scale | 1.6541 |
| Lognormal | Scale | 3.3203 |
| Lognormal | Shape | 0.4533 |
| Observed value | Rank | Proportion estimate | Expected value (normal) | Expected value (lognormal) | Expected cumulative probability (normal) |
|---|---|---|---|---|---|
| 1.38 | 1.0 | 0.0207 | 0.28 | 1.32 | 0.0843 |
| 1.42 | 2.0 | 0.0537 | 0.99 | 1.60 | 0.0881 |
| 1.56 | 3.0 | 0.0868 | 1.41 | 1.79 | 0.1024 |
| 3.34 | 15.0 | 0.4835 | 3.59 | 3.26 | 0.4239 |
| 3.38 | 16.0 | 0.5165 | 3.73 | 3.38 | 0.4333 |
| 5.36 | 28.0 | 0.9132 | 5.91 | 6.15 | 0.8483 |
| 7.46 | 29.0 | 0.9463 | 6.32 | 6.89 | 0.9892 |
| 8.37 | 30.0 | 0.9793 | 7.03 | 8.37 | 0.9978 |
Q-Q plot: observed value against expected value. P-P plot: proportion estimate against expected cumulative probability.
How to read it
Against the normal distribution the largest time, 8.37 s, is expected at only 7.03 s, and the smallest (1.38 s) is expected at 0.28 s: the points bend away from the diagonal at both ends, the signature of right skew. Under the lognormal fit (scale 3.320, shape 0.453) the largest time is expected at 8.37 s, much closer to what was observed.
Output tables explained
- Q-Q plot
- Observed value against the value the fitted distribution expects at that rank; departures at the ends show skew or heavy tails.
- P-P plot
- Observed cumulative proportion against the fitted distribution's cumulative probability; most sensitive in the middle of the distribution.
- Estimated Distribution Parameters
- The parameters estimated from the data, for example location and scale for the normal, or shape and scale for the Weibull.
- Plotted Values (first 50)
- For the first 50 sorted values: rank, proportion estimate, expected value and expected cumulative probability, the coordinates of both plots.
Assumptions and notes
- Parameters are estimated from the same data being plotted, so small samples always look a little better than they are.
- Lognormal, exponential, gamma, Weibull and Pareto need every value positive, and beta needs values strictly between 0 and 1.
- System- and user-missing values are excluded, and case weights are not used.
How the results are validated
PPLOT is checked against an independent Python reference, which implements the SPSS fractional-rank formulas and parameter estimates and takes quantiles and CDFs from scipy.stats for all 12 distributions. Estimated parameters agree to 1e-8, fractional ranks to 1e-12, expected values to 1e-7 and cumulative probabilities to 1e-8. Validation evidence
Questions
What is the difference between a P-P and a Q-Q plot?
A Q-Q plot compares values, so it magnifies differences in the tails. A P-P plot compares cumulative probabilities, so it is most sensitive in the centre. Most analysts read the Q-Q plot first.
My points curve upward at the right end. What does it mean?
The largest values are bigger than the distribution expects: the data are right-skewed or heavy-tailed. Try the lognormal or gamma distribution, or a log transformation.
Which proportion estimation should I use?
Blom is the SPSS default and works well for the normal. The other formulas shift the plotting positions slightly and matter mainly for the most extreme points of small samples.
How many points are listed?
The charts plot every valid value; the Plotted Values table lists the first 50 sorted values to keep the output readable.
Related procedures
- ExploreEXAMINE
- One-Sample Nonparametric TestsNPAR TESTS
- DescriptivesDESCRIPTIVES
- Rank CasesRANK
- SimulationSIMPLAN / SIMRUN
- Free SPSS alternative: full coverage list
Run P-P and Q-Q Plots on your own data
Open a .sav, CSV or Excel file. Everything runs in your browser; the file never leaves your device.
SPSS is a trademark of IBM Corp. Crosstabs is not affiliated with or endorsed by IBM.