################################################################################################
##方法一
################################################################################################
library(tcltk)
u <- 1:2000
#开启进度条
pb <- tkProgressBar("进度","已完成 %", 0, 100)
for(i in u) {
info<- sprintf("已完成 %d%%", round(i*100/length(u)))
setTkProgressBar(pb, i*100/length(u), sprintf("进度 (%s)", info),info)
}
#关闭进度条
close(pb)
################################################################################################
##方法二
################################################################################################
install.packages("tcltk2")
library(tcltk)
library(tcltk2)
root <- tktoplevel()
l1 <- tk2label(root)
pb1 <- tk2progress(root, length = 300)
tkconfigure(pb1, value = 0, maximum = 9)
tkgrid(l1, row = 0)
tkgrid(pb1, row = 1)
for(index in 1:10){
tkconfigure(l1, text = paste("Index", index))
tkconfigure(pb1, value = index - 1)
Sys.sleep(1)}
################################################################################################
##方法三
################################################################################################
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)