Creating Progress Bar and Setting Options
Creating progress bar and setting options.
pboptions(...) startpb(min = 0, max = 1) setpb(pb, value) getpb(pb) closepb(pb) dopb() pbtypes()
... |
Arguments in |
pb |
A progress bar object created by |
min, max |
Finite numeric values for the extremes of the progress bar.
Must have |
value |
New value for the progress bar. |
pboptions
is a convenient way of handling options
related to progress bar.
Other functions can be used for conveniently adding progress
bar to for
-like loops
(see Examples).
When parameters are set by pboptions
, their former values are
returned in an invisible named list. Such a list can be passed as an
argument to pboptions
to restore the parameter values.
Tags are the following:
type |
Type of the progress bar: timer ( |
char |
The character (or character string) to form the progress bar.
Default value is |
txt.width |
The width of the text based progress bar, as a multiple
of the width of |
gui.width |
The width of the GUI based progress bar in pixels:
the dialogue box will be 40 pixels wider (plus frame).
Default value is |
style |
The style of the bar, see
|
initial |
Initial value for the progress bar. Default value is
|
title |
Character string giving the window title
on the GUI dialogue box. Default value is |
label |
Character string giving the window label
on the GUI dialogue box. Default value is |
nout |
Integer, the maximum number of times the progress bar is updated. The default value is 100. Smaller value minimizes the running time overhead related to updating the progress bar. This can be especially important for forking type parallel runs. |
min_time |
Minimum time in seconds.
|
use_lb |
Switch for using load balancing when running in
parallel clusters. The default value is |
For startpb
a progress bar object.
For getpb
and setpb
, a length-one numeric vector giving
the previous value (invisibly for setpb
).
The return value is NULL
if the progress bar is turned off by
getOption("pboptions")$type
("none"
or NULL
value).
dopb
returns a logical value if progress bar is to be shown
based on the option getOption("pboptions")$type
.
It is FALSE
if the type of progress bar is "none"
or
NULL
.
For closepb
closes the connection for the progress bar.
pbtypes
prints the available progress bar types
depending on the operating system (i.e. "win"
available
on Windows only).
Peter Solymos <solymos@ualberta.ca>
Progress bars used in the functions:
timerProgressBar
,
txtProgressBar
,
tkProgressBar
## increase sluggishness to admire the progress bar longer sluggishness <- 0.01 ## for loop fun1 <- function() { pb <- startpb(0, 10) on.exit(closepb(pb)) for (i in 1:10) { Sys.sleep(sluggishness) setpb(pb, i) } invisible(NULL) } ## while loop fun2 <- function() { pb <- startpb(0, 10-1) on.exit(closepb(pb)) i <- 1 while (i < 10) { Sys.sleep(sluggishness) setpb(pb, i) i <- i + 1 } invisible(NULL) } ## using original settings fun1() ## resetting pboptions opb <- pboptions(style = 1, char = ">") ## check new settings getOption("pboptions") ## running again with new settings fun2() ## resetting original pboptions(opb) ## check reset getOption("pboptions") fun1() ## dealing with nested progress bars ## when only one the 1st one is needed f <- function(x) Sys.sleep(sluggishness) g <- function(x) pblapply(1:10, f) tmp <- lapply(1:10, g) # undesirable ## here is the desirable solution h <- function(x) { opb <- pboptions(type="none") on.exit(pboptions(opb)) pblapply(1:10, f) } tmp <- pblapply(1:10, h) ## list available pb types pbtypes()
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.