Skip to contents

Get variable and value labels from ggeffects-objects. Functions like ggpredict() or ggeffect() save information on variable names and value labels as additional attributes in the returned data frame. This is especially helpful for labelled data (see sjlabelled), since these labels can be used to set axis labels and titles.


get_title(x, case = NULL)

get_x_title(x, case = NULL)

get_y_title(x, case = NULL)

get_legend_title(x, case = NULL)

get_legend_labels(x, case = NULL)

get_x_labels(x, case = NULL)

get_complete_df(x, case = NULL)



An object of class ggeffects, as returned by any ggeffects-function; for get_complete_df(), must be a list of ggeffects-objects.


Desired target case. Labels will automatically converted into the specified character case. See ?sjlabelled::convert_case for more details on this argument.


The titles or labels as character string, or NULL, if variables had no labels; get_complete_df() returns the input list x

as single data frame, where the grouping variable indicates the predicted values for each term.


if (require("sjmisc", quietly = TRUE) &&
    require("ggplot2", quietly = TRUE) &&
    require("effects", quietly = TRUE)) {
  efc$c172code <- to_factor(efc$c172code)
  fit <- lm(barthtot ~ c12hour + neg_c_7 + c161sex + c172code, data = efc)

  mydf <- ggpredict(fit, terms = c("c12hour", "c161sex", "c172code"))

  ggplot(mydf, aes(x = x, y = predicted, colour = group)) +
    stat_smooth(method = "lm") +
    facet_wrap(~facet, ncol = 2) +
      x = get_x_title(mydf),
      y = get_y_title(mydf),
      colour = get_legend_title(mydf)

  # adjusted predictions, a list of data frames (one data frame per term)
  eff <- ggeffect(fit)

  # adjusted predictions for education only, and get x-axis-labels
  mydat <- eff[["c172code"]]
  ggplot(mydat, aes(x = x, y = predicted, group = group)) +
    stat_summary(fun = sum, geom = "line") +
    scale_x_discrete(labels = get_x_labels(mydat))
#> Install package "strengejacke" from GitHub (`devtools::install_github("strengejacke/strengejacke")`) to load all sj-packages at once!
#> lattice theme set by effectsTheme()
#> See ?effectsTheme for details.