What is a Q-Q Plot?
A Quantile-Quantile plot (Q-Q plot) is a graphical tool for assessing whether a dataset follows a particular theoretical distribution — most commonly the normal distribution. It plots your data quantiles against the theoretical quantiles of the reference distribution. If the data follows the reference distribution, the points fall approximately along the diagonal line.
Q-Q plots are widely used as a visual complement to formal normality tests (Shapiro-Wilk, Kolmogorov-Smirnov) because they reveal not just whether data deviates from normality, but how — making them invaluable for choosing appropriate statistical methods and transformations.
How to Interpret
- Points along the diagonal → Data is approximately normally distributed. You can proceed with parametric tests.
- S-shaped curve (points below then above the line) → Heavy-tailed distribution. Data has more extreme values than a normal distribution would predict.
- Reverse S-curve (above then below) → Light-tailed distribution. Data has fewer extreme values than expected.
- Systematic deviation at the ends → Skewness. Right skew curves upward at the right end; left skew drops below at the left end.
Frequently Asked Questions
How do I read a Q-Q plot to test for normality?
How many data points are needed for a meaningful Q-Q plot?
What's the difference between a Q-Q plot and a P-P plot?
Computation Method
- Quartiles are calculated using linear interpolation (method 7 from Hyndman & Fan, 1996), consistent with Python's NumPy and pandas defaults.
- Outlier detection uses the Tukey fences method: lower fence = Q1 − 1.5 × IQR, upper fence = Q3 + 1.5 × IQR.
- Chart scaling caps the display axis at the upper fence value so the visualization remains clear even when extreme outliers are present.
References
- Hyndman, R. J. & Fan, Y. (1996). “Sample Quantiles in Statistical Packages.” The American Statistician, 50(4), 361–365.
- Tukey, J. W. (1977). Exploratory Data Analysis. Addison-Wesley.