рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рдХреЗ рднреАрддрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рд╣реИ ...
рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдРрд╕рд╛ рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
pb1 <- progress_bar$new(total = 100)
for(i in 1:100){
pb1$tick()
pb2 <- progress_bar$new(total = 100)
for(j in 1:100){
pb2$tick()
Sys.sleep(1/1000)
}
}
рд╣рд╛рдВ, рдареАрдХ рдпрд╣реАред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдХреНрд░рд┐рдп рдкреНрд░рдЧрддрд┐ рд╕рд▓рд╛рдЦреЛрдВ рдХрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рдвреЗрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЗрдВ рдЬреЛ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ, рд╣рдо рдХреЗрд╡рд▓ рд╢реАрд░реНрд╖ рдПрдХ рдХреЛ рджрд┐рдЦрд╛рдПрдВрдЧреЗ, рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдХреА рдХреЗ рд▓рд┐рдП рд╕рд╛рд░рд╛рдВрд╢ рджрд┐рдЦрд╛рдПрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рддреАрди рд╕реНрддрд░реЛрдВ рдХреЗ рд▓рд┐рдП:
85% | 34% | 50% [====================--------------------] ETA 13s
рдЙрдЪрд┐рдд рдПрдПрдирдПрд╕рдЖрдИ рд╕рдорд░реНрдерди рд╡рд╛рд▓реЗ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рд╕рднреА рдкреНрд░рдЧрддрд┐ рдмрд╛рд░ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, 10-20 рддрдХ) рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рддрд░рд╣ рд╕реЗ рдЖрдк рдПрдХ рд▓рд╛рдЗрди рдкрд░ 3 рдпрд╛ 4 рдПрдХ рд╕рд╛рде рдкреНрд░рдЧрддрд┐ рд╕рд▓рд╛рдЦреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпреВрдирд┐рдХреЛрдб рдмреНрд░реЗрд▓ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ
[та┐та┐таЯтаЫтаЫтаЫтаТтаТтаТтаТ ]
@jimhester рдЬреЛ рд╕реНрдорд╛рд░реНрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдмрд╣реБрдд рд╕реАрдорд┐рдд рднреА рд╣реИред
рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдиреАрдЪреЗ рдХрд╛ рдХрд╛рд░реНрдп рдмрд╣реБрдд рдХрдЪреНрдЪрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдиреАрдЪреЗ рдЬреИрд╕рд╛ рдХреБрдЫ рд╕рдВрднрд╡ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ? рдореИрдВ рдЗрд╕реЗ рдкреНрд░рдЧрддрд┐ рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рдЧрддрд┐ рд╢реИрд▓реА рдкреИрдХреЗрдЬ рдореЗрдВ рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред
рдбреЗрдЯрд╛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдБ:
df <- data.frame(samplecol=c(1:50),
file=c(1:50))
df$file <- paste0("file",df$file)
x <-function() {Sys.sleep(1/100)}
y <-function() {Sys.sleep(1/20)}
рд╕рдорд╛рд░реЛрд╣:
doubleProgressBar <- function(x, y) {
for (i in 1:100) {
x()
for(j in 1:50){
y()
cat("\014")
writeLines(c(paste0("OVERALL PROGRESS:", i,"%"," [",paste(rep("+",round((i/5))), collapse="")),
paste0("FILE%: ",(j*2),"%"," CURRENTLY LOADING FILE: ",df[j,"file"], " [",paste(rep("+",round((j/2.5))), collapse=""))))
}
cat("\014")
writeLines(c(paste0("OVERALL PROGRESS:", i,"%"," [",paste(rep("+",round((i/5))), collapse="")),
paste0("FILE%: ",(j*2),"%"," CURRENTLY LOADING FILE: ",df[j,"file"], " [",paste(rep("+",round((j/2.5))), collapse=""))))
}
}
###Does what I want, but with crude text entry.
###Would be nice to have a package with nice entry have a double bar
doubleProgressBar(x,y)
рдпрд╣ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдпрджрд┐ рд╕рднреА рдЖрд░ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдиреЗ рдХрд░реНрд╕рд░ рдХреЛ рдКрдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдПрдирдПрд╕рдЖрдИ рдПрд╕реНрдХреЗрдк рдЕрдиреБрдХреНрд░рдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдХреБрдЫ (рд╡рд┐рд╢реЗрд╖рдХрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рдВрдбреЛрдЬрд╝ рдЯрд░реНрдорд┐рдирд▓) рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдХреЗрд╡рд▓ \r
рд╕рд╛рде рдЯреЗрдХреНрд╕реНрдЯ рдХреА рдЕрдВрддрд┐рдо рдкрдВрдХреНрддрд┐ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВред
рдХреНрдпрд╛ рдЖрдк рдкреВрд░реНрдг рдПрдПрдирдПрд╕рдЖрдИ рдПрд╕реНрдХреЗрдк рдЕрдиреБрдХреНрд░рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ?
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдЖрдк рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдерд╛рди рдХреЛ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ...
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╣рд╛рдВ, рдареАрдХ рдпрд╣реАред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдХреНрд░рд┐рдп рдкреНрд░рдЧрддрд┐ рд╕рд▓рд╛рдЦреЛрдВ рдХрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рдвреЗрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЗрдВ рдЬреЛ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рдЧрддрд┐ рдкрдЯреНрдЯреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ, рд╣рдо рдХреЗрд╡рд▓ рд╢реАрд░реНрд╖ рдПрдХ рдХреЛ рджрд┐рдЦрд╛рдПрдВрдЧреЗ, рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдХреА рдХреЗ рд▓рд┐рдП рд╕рд╛рд░рд╛рдВрд╢ рджрд┐рдЦрд╛рдПрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рддреАрди рд╕реНрддрд░реЛрдВ рдХреЗ рд▓рд┐рдП:
рдЙрдЪрд┐рдд рдПрдПрдирдПрд╕рдЖрдИ рд╕рдорд░реНрдерди рд╡рд╛рд▓реЗ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рд╣реА рдмрд╛рд░ рдореЗрдВ рд╕рднреА рдкреНрд░рдЧрддрд┐ рдмрд╛рд░ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, 10-20 рддрдХ) рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред