Skip to contents

For each period (row) or for the overall period of the observed matrix of the "sts" object, a map showing the counts by region is produced. It is possible to redirect the output into files, e.g., to generate an animated GIF.

Usage

stsplot_spacetime(x, type, legend = NULL, opts.col = NULL, labels = TRUE,
                  wait.ms = 250, cex.lab = 0.7, verbose = FALSE,
                  dev.printer = NULL, ...)

Arguments

x

an object of class "sts".

type

a formula (see stsplot). For a map aggregated over time (no animation), use observed ~ 1 | unit, otherwise observed ~ 1 | unit * time.

legend

a list containing the following items used for coloring

dx

position increments in x direction

dy

position increments in y direction

x

position in x

y

position in y

once

a Boolean; if TRUE then only shown once

If NULL then a default legend is used.

opts.col

a list containing the two elements

ncolors

number of colors to use for plotting

use.color

a Boolean; if TRUE then colors will be used in the palette, otherwise grayscale

labels

Boolean whether to add labels

wait.ms

Number of milliseconds to wait between each plot

cex.lab

cex of the labels

verbose

Boolean whether to write out extra information

dev.printer

Either NULL (default), which means that plotting is only to the screen, or a list with elements device, extension, width, height, and name (with defaults png, ".png", 640, 480, and "Rplot", respectively) to dev.print the plots to files (only works in interactive sessions). This option is more or less obsolete since the animation package provides better features for output to files.

...

Extra arguments sent to the plot function.

Author

Michael Höhle

Note

The animate.sts method provides a re-implementation and supersedes this function!

See also

Other stsplot types, and animate.sts for the new implementation.

Examples

data("ha.sts")
print(ha.sts)

if (surveillance.options("allExamples")) {
## map of total counts by district (compare old vs. new implementation)
plot(ha.sts, type = observed ~ 1 | unit)
plot(ha.sts, type = observed ~ unit, labels = TRUE)
}

if (FALSE) {
# space-time animation
plot(aggregate(ha.sts,nfreq=13), type = observed ~ 1 | unit * time)

#print the frames to a png device
#and do the animation without extra sleeping between frames
imgname <- file.path(tempdir(), "berlin")
plot(aggregate(ha.sts,nfreq=13), type = observed ~ 1 | unit * time,
     wait.ms=0, dev.printer=list(name=imgname))

#Use ImageMagick (you might have to adjust the path to 'convert')
system(paste0("convert -delay 50 ", imgname,
              "*.png ", imgname, "-animated.gif"))
}