value 값의 범위(0~20,20~40,40~90,90~100) 에 따라 다른색으로 그려지는 bar 형태를 표현하였습니다.
gauge <- function(value, L) {
if (value <= 20) {
C <- "#FF3636"
}
if (value <= 40 & value > 20) {
C <- "#FF8224"
}
if (value <= 90 & value > 40) {
C <- "#CFFF24"
}
if (value <= 100 & value > 90) {
C <- "#489CFF"
}
plot(NULL, xlim = c(0, 100), ylim = c(-1, 20), yaxt = "n", ann = FALSE,
xaxt = "n", bty = "n")
rect(0, 0, 100/2, 2, border = T)
text(99/2, 0.3, paste(value, "%", sep = ""), cex = 2, pos = 4)
text(50/2, 3, L, pos = 3, cex = 1.3)
rect(0, 0, value/2, 2, col = C)
for (i in seq(from = 10/2, to = 90/2, by = 10/2)) {
segments(i, 0, i, 2, col = "#FFB2F5")
text(i, 0.1, paste(i * 2, "%", sep = ""), cex = 0.6, pos = 1)
}
}
gauge(95, "할일")
gauge(20, "준비")
gauge(75, "진행")