Some Movies to Illustrate Concepts in Statistics

Provides movies to help students to understand statistical concepts. The 'rpanel' package <> is used to create interactive plots that move to illustrate key statistical ideas and methods. There are movies to: visualise probability distributions (including user-supplied ones); illustrate sampling distributions of the sample mean (central limit theorem), the sample maximum (extremal types theorem) and (the Fisher transformation of the) Pearson product moment correlation coefficient; examine the influence of an individual observation in simple linear regression; illustrate key concepts in statistical hypothesis testing. Also provided are dpqr functions for the distribution of the Fisher transformation of the correlation coefficient under sampling from a bivariate normal distribution.


Travis-CI Build Status AppVeyor Build Status CRAN_Status_Badge

What does smovie do?

The smovie package provides movies to help students to understand statistical concepts. The rpanel package is used to create interactive plots that move to illustrate key statistical ideas and methods. The movies cover the topics of probability distributions; sampling distributions of the mean (central limit theorem), the maximum (extremal types theorem) and the (Fisher transformation of the) correlation coefficient; simple linear regression; hypothesis testing.

An example

The function wws produces a movie to visualise the Wald, Wilks and score likelihood-based test statistics, for a model with a scalar unknown parameter. The user can change the value of the parameter under a simple null hypothesis and observe the effect on the test statistics. The following code uses the log-likelihood from a binomial experiment and considers the null hypothesis that the success probability θ is equal to θ0. The user may specify their own log-likelihood.

wws(theta0 = 0.5)


To get the current released version from CRAN:


Note that rpanel requires the Tcl extension BWidget. BWidget is included in the R installers for Windows and macOS. For other platforms please see Section 1.1.7 of Writing R Extensions for installation advice.


See vignette("smovie-vignette", package = "smovie") for an overview of the package.


smovie 1.0.1

Bug fixes and minor improvements

  • The way that objects modified inside the plotting function are saved has been changed to enable two or more panels produced by the same smovie function to operate simultaneously and independently, even if the call is exactly the same.

  • The argument plot_par in the functions discrete and continuous didn't work properly. It does now.

  • Both hscale and vscale may be passed to the main menu function movies to scale the size of the graphics panel horizontal and vertically.

  • In ett() and clt() the legend position in plots of cdfs has been moved to "topleft" better to avoid overlapping the contents of the plot. The argument leg_cex has been added to enable manual control of the size of the legends.

  • That smovie requires the R extension BWidget (via its dependence on the package rpanel) is noted in the README file. If BWidget is not installed then a message is given to explain why the smovie functions don't work.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.1 by Paul J. Northrop, a year ago

Report a bug at

Browse source code at

Authors: Paul J. Northrop [aut, cre, cph]

Documentation:   PDF Manual  

Task views: Teaching Statistics

GPL (>= 2) license

Imports graphics, methods, revdbayes, stats, SuppDists

Depends on rpanel

Suggests knitr, numDeriv, tkrplot, testthat, rmarkdown

See at CRAN