error.dots function

Show a dot.chart with error bars for different groups or variables

Show a dot.chart with error bars for different groups or variables

Yet one more of the graphical ways of showing data with error bars for different groups. A dot.chart with error bars for different groups or variables is found using from describe, describeBy, statsBy, corCi, corr.test or data from bestScales.

error.dots(x=NULL, var = NULL, se = NULL, group = NULL, sd = FALSE, effect=NULL, stats=NULL, head = 12, tail = 12, sort = TRUE, decreasing = TRUE, main = NULL, alpha = 0.05, eyes = FALSE,items=FALSE, min.n = NULL, max.labels = 40, labels = NULL, label.width=NULL, select=NULL, groups = NULL, gdata = NULL, cex = par("cex"), pt.cex = cex, pch = 21, gpch = 21, bg = par("bg"), fg=par("fg"), color = par("fg"), gcolor = par("fg"), lcolor = "gray", xlab = NULL, ylab = NULL, xlim = NULL,add=FALSE,order=NULL, ...)

Arguments

  • x: A data frame or matrix of raw data, or the resulting object from describe, describeBy, statsBy, bestScales, corCi, corr.test, or cohen.d
  • var: The variable to show (particularly if doing describeBy or StatsBy plots).
  • se: Source of a standard error
  • group: A grouping variable, if desired. Will group the data on group for one variable (var)
  • sd: if FALSE, confidence intervals in terms of standard errors, otherwise draw one standard deviation
  • effect: Should the data be compared to a specified group (with mean set to 0) in effect size units?
  • stats: A matrix of means and se to use instead of finding them from the data
  • head: The number of largest values to report
  • tail: The number of smallest values to report
  • sort: Sort the groups/variables by value
  • decreasing: Should they be sorted in increasing or decreasing order (from top to bottom)
  • main: The caption for the figure
  • alpha: p value for confidence intervals
  • eyes: Draw catseyes for error limits
  • items: If showing results from best scales, show the items for a specified dv
  • min.n: If using describeBy or statsBy, what should be the minimum sample size to draw
  • max.labels: Length of labels (truncate after this value)
  • labels: Specify the labels versus find them from the row names
  • label.width: Truncate after labels.width
  • select: Scale the plot for all the variables, but just show the select variables
  • groups: ignored: to be added eventually
  • gdata: ignored
  • cex: The standard meaning of cex for graphics
  • pt.cex: ignored
  • pch: Plot character of the mean
  • gpch: ignored
  • bg: background color (of the dots showing the means)
  • fg: foreground color (of the line segments)
  • color: Color of the text labels
  • gcolor: ignored
  • lcolor: ignored until groups are implemented
  • xlab: Label the x axis, if NULL, the variable name is used
  • ylab: If NULL, then the group rownames are used
  • xlim: If NULL, then calculated to show nice values
  • add: If TRUE, will add the plot to a previous plot (e.g., from dotchart)
  • order: if sort=TRUE, if order is NULL, sort on values, otherwise, if order is returned from a previous figure, use that order.
  • ...: And any other graphic parameters we have forgotten

Details

Adapted from the dot.chart function to include error bars and to use the output of describe, describeBy, statsBy, fa, bestScales or cohen.d. To speed up multiple plots, the function can work from the output of a previous run. Thus describeBy will be done and the results can be show for multiple variables.

If using the add=TRUE option to add an error.dots plot to a dotplot, note that the order of variables in dot plots goes from last to first (highest y value is actually the last value in a vector.) Also note that the xlim parameter should be set to make sure the plots line up correctly.

Returns

Returns (invisibily) either a describeBy or describe object as well as the order if sorted

References

Used in particular for showing https://sapa-project.org output.

Author(s)

William Revelle

See Also

describe, describeBy, or statsBy as well as error.bars, error.bars.by, statsBy, bestScales or cohen.d

Examples

temp <- error.dots(bfi[1:25],sort=TRUE, xlab="Mean score for the item, sorted by difficulty") error.dots(bfi[1:25],sort=TRUE, order=temp$order, add=TRUE, eyes=TRUE) #over plot with eyes #error.dots(psychTools::ability,eyes=TRUE, xlab="Mean score for the item") cd <- cohen.d(bfi[1:26],"gender") temp <- error.dots(cd, select=c(1:15,21:25),head=12,tail=13, main="Cohen d and confidence intervals of BFI by gender") error.dots(cd,select=c(16:20),head=13,tail=12,col="blue",add=TRUE,fg="red" ,main="") abline(v=0) #now show cis for correlations R <- corCi(attitude,plot=FALSE) error.dots(R, sort=FALSE) #the asymmetric case R <- corr.test(attitude[,1:2],attitude[,3:7]) error.dots(R, sort=FALSE)