quincunx {animation} | R Documentation |
Demonstration of the Quincunx (Bean Machine/Galton Box)
Description
Simulates the quincunx with “balls” (beans) falling through several layers
(denoted by triangles) and the distribution of the final locations at which
the balls hit is denoted by a histogram; quincunx()
is shows single
layer, and quincunx2()
is a two-stage version of the quincunx.
Usage
quincunx(
balls = 200,
layers = 15,
pch.layers = 2,
pch.balls = 19,
col.balls = sample(colors(), balls, TRUE),
cex.balls = 2
)
quincunx2(
balls = 200,
layers = 15,
pch.layers = 2,
pch.balls = 19,
col.balls = sample(colors(), balls, TRUE),
cex.balls = 2
)
Arguments
balls |
number of balls |
layers |
number of layers |
pch.layers |
point character of layers; triangles ( |
pch.balls , col.balls , cex.balls |
point character, colors and magnification of balls |
Details
The bean machine, also known as the quincunx or Galton box, is a device invented by Sir Francis Galton to demonstrate the law of error and the normal distribution.
When a ball falls through a layer, it can either go to the right or left side with the probability 0.5. At last the location of all the balls will show us the bell-shaped distribution.
Value
A named vector: the frequency table for the locations of the balls. Note the names of the vector are the locations: 1.5, 2.5, ..., layers - 0.5.
Note
The maximum number of animation frames is controlled by
ani.options('nmax')
as usual, but it is strongly recommended that
ani.options(nmax = balls + layers -2)
, in which case all the balls
will just fall through all the layers and there will be no redundant
animation frames.
Author(s)
Yihui Xie, Lijia Yu, and Keith ORourke
References
Examples at https://yihui.org/animation/example/quincunx/