errbar                 package:Hmisc                 R Documentation

_P_l_o_t _E_r_r_o_r _B_a_r_s

_D_e_s_c_r_i_p_t_i_o_n:

     Add vertical error bars to an existing plot or makes a new plot
     with error bars.

_U_s_a_g_e:

     errbar(x, y, yplus, yminus, cap=0.015, main = NULL,
            sub=NULL, xlab=as.character(substitute(x)),
            ylab=if(is.factor(x) || is.character(x)) ""
                else as.character(substitute(y)),
            add=FALSE, lty=1, xlim=NULL, ylim=NULL,
            lwd=1, pch=16, Type=rep(1, length(y)), axes=FALSE, ann=par("ann"),
            panel.first=NULL, panel.last=NULL, asp=NA, ...)

_A_r_g_u_m_e_n_t_s:

       x: vector of numeric x-axis values (for vertical error bars) or
          a factor or character variable (for horizontal error bars,
          'x' representing the group labels) 

       y: vector of y-axis values. 

   yplus: vector of y-axis values: the tops of the error bars. 

  yminus: vector of y-axis values: the bottoms of the error bars. 

     cap: the width of the little lines at the tops and bottoms of the
          error bars in units of the width of the plot.  Defaults to
          '0.015'. 

    main: a main title for the plot, see also 'title'. 

     sub: a sub title for the plot. 

    xlab: optional x-axis labels if 'add=FALSE'. 

    ylab: optional y-axis labels if 'add=FALSE'.  Defaults to blank for
          horizontal charts. 

     add: set to 'TRUE' to add bars to an existing plot (available only
          for vertical error bars) 

     lty: type of line for error bars 

    xlim: x-axis limits.  Default is range of 'x' values. 

    ylim: y-axis limits.  Default is to use range of 'y', 'yminus', and
          'yplus'.  For horizonal charts, 'ylim' is really the 'x'-axis
          range, excluding differences. 

     lwd: line width for line segments (not main line) 

     pch: character to use as the point. 

    Type: used for horizontal bars only.  Is an integer vector with
          values '1' if corresponding values represent simple
          estimates, '2' if they represent differences. 

     ann: a logical value indicating whether the default annotation
          (title and x and y axis labels) should appear on the plot. 

    axes: a logical value indicating whether both axes should be drawn
          on the plot. 

panel.first: an expression to be evaluated after the plot axes are set
          up but before any plotting takes place. 

panel.last: an expression to be evaluated after plotting has taken
          place. 

     asp: the y/x aspect ratio, see 'plot.window'. 

     ...: other parameters passed to all graphics functions. 

_D_e_t_a_i_l_s:

     errbar adds vertical error bars to an existing plot or makes a new
     plot with error bars.  It can also make a horizontal error bar
     plot that shows error bars for group differences as well as bars
     for groups.  For the latter type of plot, the lower x-axis scale
     corresponds to group estimates and the upper scale corresponds to
     differences.  The spacings of the two scales are identical but the
     scale for differences has its origin shifted so that zero may be
     included.  If at least one of the confidence intervals includes
     zero, a vertical dotted reference line at zero is drawn.

_A_u_t_h_o_r(_s):

     Charles Geyer, University of Chicago.  Modified by Frank Harrell,
     Vanderbilt University, to handle missing data, to add the
     parameters 'add' and 'lty', and to implement horizontal charts
     with differences.

_E_x_a_m_p_l_e_s:

     set.seed(1)
     x <- 1:10
     y <- x + rnorm(10)
     delta <- runif(10)
     errbar( x, y, y + delta, y - delta )

     # Show bootstrap nonparametric CLs for 3 group means and for
     # pairwise differences on same graph
     group <- sample(c('a','b','d'), 200, TRUE)
     y     <- runif(200) + .25*(group=='b') + .5*(group=='d')
     cla <- smean.cl.boot(y[group=='a'],B=100,reps=TRUE)  # usually B=1000
     a   <- attr(cla,'reps')
     clb <- smean.cl.boot(y[group=='b'],B=100,reps=TRUE)
     b   <- attr(clb,'reps')
     cld <- smean.cl.boot(y[group=='d'],B=100,reps=TRUE)
     d   <- attr(cld,'reps')
     a.b <- quantile(a-b,c(.025,.975))
     a.d <- quantile(a-d,c(.025,.975))
     b.d <- quantile(b-d,c(.025,.975))
     errbar(c('a','b','d','a - b','a - d','b - d'),
            c(cla[1],clb[1],cld[1],cla[1]-clb[1],cla[1]-cld[1],clb[1]-cld[1]),
            c(cla[3],clb[3],cld[3],a.b[2],a.d[2],b.d[2]),
            c(cla[2],clb[2],cld[2],a.b[1],a.d[1],b.d[1]),
            Type=c(1,1,1,2,2,2), xlab='', ylab='')
            

