1. Home
  2. BLANDALTMAN procedure


Produces Bland-Altman plots to assess the agreement between two variates (A.R.G. McLachlan).


PRINT = string tokens Controls printed output (summary, estimates); default * i.e. none
PLOT = string tokens What to plot (blandaltman, normal); default blan
DMETHOD = string token Method for calculating differences (differences, ratios, %differences, percentages); default diff
LMETHOD = string token Method for calculating limits of agreement when regression is not used (normaldistribution, percentile); default norm
REGMETHOD = string tokens Whether to use regression to calculate bias (i.e. mean) or limits (bias, mean, limits, auto); default * i.e. none
CIPROBABILITY = scalar Probability level for limits of agreement, confidence intervals and percentiles; default 0.95
LOWERLIMIT = scalar Lower limit of agreement to use instead of a calculated limit
UPPERLIMIT = scalar Upper limit of agreement to use instead of a calculated limit
ALPHALEVEL = scalar Critical probability level used for regression when REGMETHOD=auto; default 0.05
XBLANDALTMAN = string token X-values to use for the Bland-Altman plot (mean, Y1, Y2); default mean
REFERENCELINECHOICE = string tokens Reference lines to plot on a Bland-Altman plot (bias, mean, limits, zero); default bias
GRAPHICS = string token Type of graph (highresolution, lineprinter); default high
WINDOW = scalar Window for the plot; default 3
SCREEN = string token Whether to clear or keep the screen before displaying the plot (keep, clear); default clea
PENZEROLINE = scalar Pen to use for the zero reference line
PENMEANLINE = scalar Pen to use for the mean reference line
PENLIMITLINES = scalar Pen to use for the reference lines showing limits of agreement


Y1 = variates First variate
Y2 = variates Second variate
LABELS = texts Labels for individual points on the Bland-Altman plot
MEANS = variates Saves the means
DIFFERENCES = variates Saves the differences, ratios or % differences (according to the DMETHOD option)
TITLE = texts Title for the Bland-Altman plot
YTITLE = texts Title for y-axis of the Bland-Altman plot
XTITLE = texts Title for x-axis of the Bland-Altman plot
PEN = scalars, variates or factors Pen for plotting points on the Bland-Altman plot; default 1


Bland-Altman plots provide an effective way of assessing two different methods for measuring some quantity (Bland & Altman 1999; see also Altman & Bland 1983 and Bland & Altman 1986). The data are supplied by the Y1 and Y2 parameters, in two variates containing measurements on the same set of samples. The default display plots the differences between the measurements against their mean, so that the sizes of the discrepancies can be assessed while also seeing whether there is any bias or nonlinearity between the methods. Ideally, the points should lie within a rectangle arranged symmetrically around the x-axis i.e. similar amounts of scatter above and below the line of zero difference. The means and differences can be saved, in variates, using the MEANS and DIFFERENCES parameters, respectively.

The DMETHOD option controls the type of difference that is displayed, with settings:

    differences differences Y1 - Y2 (default),
    ratios Y1 / Y2,
    %differences (Y1 - Y2) / ((Y1 + Y2)/2) * 100, and
    percentages synonym of %differences.

The plot can also show “limits of agreement” which are intended to represent boundaries on the acceptable difference between the methods. These can be supplied by the LOWERLIMIT and UPPERLIMIT options, Alternatively, if LOWERLIMIT and UPPERLIMIT are not set, the limits are calculated by the procedure according to the setting of the LMETHOD option:

    normaldistribution uses confidence limits calculated assuming that the differences have a Normal distribution (default), and
    percentile takes percentiles of the differences.


The CIPROBABILITY option specifies the probability for calculating the limits of agreement when LMETHOD=norm, or the percentiles used for the limits when LMETHOD=perc. The default of 0.95 gives 95% limits of agreement, and percentiles of 2.5 and 97.5%.

The REFERENCELINECHOICE option allows reference lines can be included on the Bland-Altman plot:

    mean or bias plots a line at the overall mean of the differences (default),
    limits plots upper and lower limits of agreement, and
    zero plot horizontal line at zero, or one when DMETHOD=ratio.

If there seems to be a trend in the plot (differences becoming larger or smaller as the means increase), it can be useful to fit a linear regression (on the mean) to the bias, or to the variation in the bias, or both. This is controlled by the REGMETHOD option. Setting REGMETHOD to mean or bias fits a line through the Bland-Altman plot to estimate the mean or bias. Limits of agreement are then calculated assuming a constant variance and a Normal distribution so that, if references lines are plotted for the limits, they will be parallel to the reference line for the mean. Alternatively, if REGMETHOD=limits, linear regression is used to estimate the variation in the differences. The limits then form a ‘fan-shape’ pattern about the horizontal bias line. These two settings can be combined (REGMETHOD=bias,limits) so that linear regression is used to estimate both the bias and the variation in the differences. Finally, if you set REGMETHOD=auto, the procedure automatically determines whether or not linear regression should be used to estimate either the bias or the variation or both. The ALPHALEVEL option then specifies the critical value for testing the significance of the regressions (default 0.05 i.e. 5%), to decide whether they should be used.

The PLOT option controls the plots that are produced:

    blandaltman produces the Bland-Altman plot (default), and
    normal produces a Normal (q-q) plot of the differences.

The x-values to be used in the Bland-Altman plot are controlled by the XBLANDALTMAN option. The default is to use the averages of the Y1 and Y2 variates (as recommended by Bland & Altman 1995). Alternatively, the settings Y1 and Y2 allow one of the two variates to be used instead; Krouwer (2008) recommended plotting against measurements from a reference method, if this has provided much better precision.

By default high-precision graphics are used, but you can set option GRAPHICS=lineprinter to produce character-based graphs in the output window instead. The WINDOW option can be used to specify which graphics window to use for a high-resolution graph, and the SCREEN option allows you to stop the screen being cleared before plotting the Bland-Altman graph. Note that this does not to apply to the Normal probability plots, as the DPROBABILITY procedure (that is used to produce the plot) does not support the SCREEN option.

There are several options and parameters that can be used to modify the appearance of the Bland-Altman plot. The TITLE parameter can supply an overall title, and the YTITLE and XTITLE parameters can supply titles for the y- and x-axis. You can specify a text containing labels for the points in the Bland-Altman plot using the LABELS parameter. The PEN parameter allows you to specify a pen or pens for the points (default 1). The PENZEROLINE, PENMEANLINE and PENLIMITSLINES options specify pens for the reference lines at zero, mean difference and limits of agreement, respectively. If these options are not set, BLANDALTMAN uses the line colours, thicknesses and styles (if set) from pens 1, 2 and 3, respectively.

The PRINT option controls the printing of the results, with settings:

    estimates to print the estimates, and
    summary to print a summary showing the number and percentage of values above and below zero, and outside the limits of agreement.

When regression is being used, the estimates consist of the slope of the line, with its standard error and confidence interval, together with the sample size. Otherwise, they consist of the mean difference, limits of agreement, standard error of the differences and the sample size. By default, nothing is printed.

Note that the procedure does not cater for repeated measures of subjects. See Bland & Altman (1999, 2007) for information on how different types of repeated measures can be handled.



Action with RESTRICT

Y1 and Y2 factor can be restricted to exclude units from the analysis. Restrictions on LABELS and PEN are ignored.


Altman, D.G. & Bland, J.M. (1983). Measurement in medicine: the analysis of method comparison studies. Statistician, 32, 307–317.

Bland, J.M. & Altman, D.G. (1986). Statistical methods for assessing agreement between two methods of clinical measurement. Lancet, i, 307–310.

Bland J.M. & Altman D.G. (1995). Comparing methods of measurement – why plotting difference against standard method is misleading. Lancet, 346, 1085–1087.

Bland, J. M. & Altman, D. G. (1999). Measuring agreement in method comparison studies. Statistical Methods in Medical Research, 8, 135–160.

Bland, J.M. & Altman, D.G. (2007). Agreement between methods of measurement with multiple observations per individual. Journal of Biopharmaceutical Statistics, 17, 571–582.

Krouwer, J.S. (2008). Why Bland–Altman plots should use X, not (Y+X)/2 when X is a reference method. Statistics in Medicine, 27, 778–780.

See also



            'Data from Bland & Altman (1986), Lancet, i, 307-310.';\
VARIATE     [NVALUES=17] Wright,Mini; VALUES=\
BLANDALTMAN [PRINT=estimates,summary; REFERENCE=mean,limit] Y1=Wright; Y2=Mini
Updated on February 6, 2023

Was this article helpful?