## Add Labelled Brackets to Group Predictors in a Dot-and-Whisker Plot

### Description

add_brackets draws brackets along the y-axis beyond the plotting area of a dot-and-whisker plot generated by dwplot, useful for labelling groups of predictors

### Usage

add_brackets(p, brackets, fontSize = 0.7, face = "italic", ...)


### Arguments

 p A plot generated by dwplot. Any 'ggplot' customization should be done before passing the plot to add_brackets. To pass the finalized plot to add_brackets without creating an intermediate object, simply wrap the code that generates it in braces ({ and }). brackets A list of brackets; each element of the list should be a character vector consisting of (1) a label for the bracket, (2) the name of the topmost variable to be enclosed by the bracket, and (3) the name of the bottom most variable to be enclosed by the bracket. fontSize A number defining the size of the bracket label. The default value is .7. face A typeface for the bracket labels; options are "plain", "bold", "italic", "oblique", and "bold.italic". ... Extra arguments to pass to gpar.

### Details

The brackets are drawn by 'grid' functions. Apart from font size and typeface, users can customize the appearance of the bracket labels by setting 'gpar' arguments in 'add_brackets'.

### Value

The function returns a ggplot object.

### Examples

library(dplyr)
m1 <- lm(mpg ~ wt + cyl + disp, data = mtcars)
two_brackets <- list(c("Engine", "Cylinder", "Displacement"),
c("Not Engine", "Intercept", "Weight"))

{dwplot(m1, show_intercept = TRUE) %>%
relabel_predictors("(Intercept)" = "Intercept",
wt = "Weight",
cyl = "Cylinder",
disp = "Displacement") +
theme_bw() + xlab("Coefficient") + ylab("") +
theme(legend.position="none") +
geom_vline(xintercept = 0, colour = "grey50", linetype = 2)} %>%