@@ -52,7 +52,7 @@ internal.node.labs <- function(x, node.fun, node.fun.name, type, extra,
5252 labs <- x $ functions $ text(
5353 yval = if (is.null(frame $ yval2 )) frame $ yval else frame $ yval2 ,
5454 dev = frame $ dev , wt = frame $ wt , ylevel = attr(x , " ylevels" ),
55- digits = digits , n = frame $ n , use.n = extra )
55+ digits = abs( digits ) , n = frame $ n , use.n = extra )
5656 check.returned.labs(x , labs , " x$functions$text()" )
5757 if (under )
5858 labs <- sub(" \n " , " \n\n " , labs ) # replace \n with \n\n
@@ -63,7 +63,7 @@ internal.node.labs <- function(x, node.fun, node.fun.name, type, extra,
6363 # call user's node.fun
6464 node.fun <- check.func.args(node.fun , " node.fun" ,
6565 function (x , labs , digits , varlen ) NA )
66- labs <- node.fun(x , labs , digits , varlen )
66+ labs <- node.fun(x , labs , abs( digits ) , varlen )
6767 check.returned.labs(x , labs , node.fun.name )
6868 }
6969 labs <- paste0(prefix , labs , suffix )
@@ -88,7 +88,8 @@ get.anova.labs <- function(x, extra, under, digits, xsep, varlen)
8888 if (extra > = 100 ) { # add percent?
8989 sep <- if (extra == 100 ) newline else " "
9090 labs <- sprintf(" %s%s%s%%" , labs , sep ,
91- formatf(100 * frame $ wt / frame $ wt [1 ], digits = max(0 , digits - 2 )))
91+ formatf(100 * frame $ wt / frame $ wt [1 ],
92+ digits = max(0 , abs(digits )- 2 )))
9293 }
9394 labs
9495}
@@ -156,7 +157,7 @@ get.class.labs <- function(obj, extra, under, digits, xsep, varlen, class.stats)
156157 n.per.lev <- format0(class.stats $ n.per.lev , digits )
157158 n.per.lev <- apply(matrix (n.per.lev , ncol = class.stats $ nlev ),
158159 1 , paste.with.breaks , collapse = xsep )
159- prob.per.lev <- formatf(class.stats $ prob.per.lev , digits ,
160+ prob.per.lev <- formatf(class.stats $ prob.per.lev , abs( digits ) ,
160161 strip.leading.zeros = print.all.probs )
161162 if (print.all.probs )
162163 prob.per.lev <- apply(matrix (prob.per.lev , ncol = class.stats $ nlev ),
@@ -200,7 +201,8 @@ get.class.labs <- function(obj, extra, under, digits, xsep, varlen, class.stats)
200201 " \n " ) # 9
201202
202203 labs <- sprintf(" %s%s%s%%" , labs , sep ,
203- formatf(100 * frame $ wt / frame $ wt [1 ], digits = max(0 , digits - 2 )))
204+ formatf(100 * frame $ wt / frame $ wt [1 ],
205+ digits = max(0 , abs(digits )- 2 )))
204206 }
205207 labs
206208}
@@ -219,14 +221,15 @@ get.poisson.labs <- function(obj, extra, under, digits, xsep, varlen)
219221 labs <- sprintf(" %s%s%s%s%s" ,
220222 rate , newline , nbr , xsep , format0(frame $ n , digits ))
221223 } else if (ex == 2 ) { # add number of events?
222- labs <- sprintf(" %s%s%s" , rate , newline , nbr , digits )
224+ labs <- sprintf(" %s%s%s" , rate , newline , nbr )
223225 newline <- " " # want percent, if any, on same line
224226 } else
225227 stop0(" extra=" , extra , " is illegal (for method=\" " , obj $ method , " \" )" )
226228
227229 if (extra > = 100 ) # add percent?
228230 labs <- sprintf(" %s%s%s%%" , labs , newline ,
229- formatf(100 * frame $ wt / frame $ wt [1 ], digits = max(0 , digits - 2 )))
231+ formatf(100 * frame $ wt / frame $ wt [1 ],
232+ digits = max(0 , abs(digits )- 2 )))
230233 labs
231234}
232235print.node.labs.and.stop <- function (labs , fun.name , ... )
0 commit comments