txtProgressBar

0th

Percentile

Text Progress Bar

Text progress bar in the Rconsole.

Keywords
utilities
Usage
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, \dots)

Arguments
min, max
(finite) numeric values for the extremes of the progress bar. Must have min < max.
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 char. If NA, the default, the number of characters is that which fits into getOption("width").
style
the style of the bar -- see Details.
file
an open connection object or "" which indicates the console: stderr() might be useful here.
pb, con
an object of class "txtProgressBar".
title, label
ignored, for compatibility with other progress bars.
...
for consistency with the generic.
Details

txtProgressBar will display a progress bar on the Rconsole (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 Rconsole. style = 3 marks the end of the range by | and gives a percentage to the right of the bar.

Value

  • For txtProgressBar an object of class "txtProgressBar".

    For getTxtProgressBar and setTxtProgressBar, a length-one numeric vector giving the previous value (invisibly for setTxtProgressBar).

Note

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 Ris running, and this is liable to produce ugly output on a connection other than a terminal, including when stdout() is redirected to a file.

See Also

#ifdef windows winProgressBar, #endif tkProgressBar. #ifdef unix

Windows versions of Ralso have winProgressBar. #endif

Aliases
  • txtProgressBar
  • getTxtProgressBar
  • setTxtProgressBar
  • close.txtProgressBar
Examples
library(utils) # 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)
Documentation reproduced from package utils, version 3.3, License: Part of R 3.3

Community examples

Looks like there are no examples yet.