Skip to contents

Plots a Bertin, Ford (battleship curve) or Dice-Leraas diagram.


plot_bertin(object, ...)

plot_ford(object, ...)

# S4 method for matrix
plot_bertin(object, threshold = NULL, scale = NULL)

# S4 method for data.frame
plot_bertin(object, threshold = NULL, scale = NULL)

# S4 method for matrix
plot_ford(object, EPPM = FALSE)

# S4 method for data.frame
plot_ford(object, EPPM = FALSE)



A \(m \times p\) numeric matrix or data.frame of count data (absolute frequencies giving the number of individuals for each class).


Currently not used.


A function that takes a numeric vector as argument and returns a numeric threshold value (see below). If NULL (the default), no threshold is computed.


A function used to scale each variable, that takes a numeric vector as argument and returns a numeric vector. If NULL (the default), no scaling is performed.


A logical scalar: should the EPPM be drawn (see below)?


A ggplot2::ggplot object.


If EPPM is TRUE and if a relative abundance is greater than the mean percentage of the type, the exceeding part is highlighted.

Bertin Matrix

As de Falguerolles et al. (1997) points out: "In abstract terms, a Bertin matrix is a matrix of displays. ... To fix ideas, think of a data matrix, variable by case, with real valued variables. For each variable, draw a bar chart of variable value by case. High-light all bars representing a value above some sample threshold for that variable."


This positive difference from the column mean percentage (in french "écart positif au pourcentage moyen", EPPM) represents a deviation from the situation of statistical independence. As independence can be interpreted as the absence of relationships between types and the chronological order of the assemblages, EPPM is a useful tool to explore significance of relationship between rows and columns related to seriation (Desachy 2004).


Bertin, J. (1977). La graphique et le traitement graphique de l'information. Paris: Flammarion. Nouvelle Bibliothèque Scientifique.

de Falguerolles, A., Friedrich, F. & Sawitzki, G. (1997). A Tribute to J. Bertin's Graphical Data Analysis. In W. Badilla & F. Faulbaum (eds.), SoftStat '97: Advances in Statistical Software 6. Stuttgart: Lucius & Lucius, p. 11-20.

Desachy, B. (2004). Le sériographe EPPM: un outil informatisé de sériation graphique pour tableaux de comptages. Revue archéologique de Picardie, 3(1), 39-56. doi:10.3406/pica.2004.2396 .

Ford, J. A. (1962). A quantitative method for deriving cultural chronology. Washington, DC: Pan American Union. Technical manual 1.

See also


N. Frerebeau


# \donttest{
## Abundance data
data("mississippi", package = "folio")

## Plot a Bertin diagram...
## ...without threshold

## ...with variables scaled to 0-1 and the variable mean as threshold
scale_01 <- function(x) (x - min(x)) / (max(x) - min(x))
plot_bertin(mississippi, threshold = mean, scale = scale_01)

## Abundance data
## Coerce dataset to a count matrix (data from Desachy 2004)
data("compiegne", package = "folio")

## Plot a Ford diagram...
## ...without threshold

## ...with EPPM
plot_ford(compiegne, EPPM = TRUE)

# }