| txtProgressBar {utils} | R Documentation |
Text progress bar in the R console.
txtProgressBar(min = 0, max = 1, initial = 0, char = "=",
width = NA, title, label, style = 1, file = "")
getTxtProgressBar(pb)
setTxtProgressBar(pb, value, title = NULL, label = NULL)
## S3 method for class 'txtProgressBar'
close(con, ...)
min, max |
(finite) numeric values for the extremes of the
progress bar. Must have |
initial, value |
initial or new value for the progress bar. See ‘Details’ for what happens with invalid values. |
char |
the character (or character string) to form the progress bar. |
width |
the width of the progress bar, as a multiple of the width
of |
style |
the ‘style’ of the bar – see ‘Details’. |
file |
an open connection object or |
pb, con |
an object of class |
title, label |
ignored, for compatibility with other progress bars. |
... |
for consistency with the generic. |
txtProgressBar will display a progress bar on the R console
(or a connection) via a text representation.
setTxtProgessBar will update the value. Missing
(NA) and out-of-range values of value will be
(silently) ignored. (Such values of initial cause the progress
bar not to be displayed until a valid value is set.)
The progress bar should be closed when finished with: this
outputs the final newline character.
style = 1 and style = 2 just shows a line of
char. They differ in that style = 2 redraws the line
each time, which is useful if other code might be writing to the R
console. style = 3 marks the end of the range by | and
gives a percentage to the right of the bar.
For txtProgressBar an object of class "txtProgressBar".
For getTxtProgressBar and setTxtProgressBar, a
length-one numeric vector giving the previous value (invisibly for
setTxtProgressBar).
Using style 2 or 3 or reducing the value with style = 1
uses \r to return to the left margin – the interpretation of
carriage return is up to the terminal or console in which R is
running, and this is liable to produce ugly output on a connection
other than a terminal, including when stdout() is
redirected to a file.
Windows versions of R also have winProgressBar.
# slow
testit <- function(x = sort(runif(20)), ...)
{
pb <- txtProgressBar(...)
for(i in c(0, x, 1)) {Sys.sleep(0.5); setTxtProgressBar(pb, i)}
Sys.sleep(1)
close(pb)
}
testit()
testit(runif(10))
testit(style=3)