Frequently asked questions

knitr::opts_chunk$set( dpi = 300, out.width = "100%", collapse = TRUE, comment = "#>" )


Here are some of the common questions that have been asked in GitHub issues and on social media platforms.

I just want the plot, not the statistical details. How can I turn them off?

All functions in ggstatsplot that display results from statistical analysis in a subtitle have argument results.subtitle. Setting it to FALSE will return only the plot.

What statistical test was carried out?

In case you are not sure what was the statistical test that produced the results shown in the subtitle of the plot, the best way to get that information is to either look at the documentation for the function used or check out the associated vignette. For example, if you used the function ggbetweenstats, the details of the tests can be seen at the summary table. Such summary tables are available for each function.

Does ggstatsplot work with plotly?

The plotly R graphing library makes it easy to produce interactive web graphics via 'plotly.js'. ggstatsplot functions are compatible with plotly.

set.seed(123) library(ggstatsplot) library(plotly) # will work p <- ggstatsplot::ggbetweenstats( data = mtcars, x = cyl, y = mpg, messages = FALSE ) # converting to plotly object plotly::ggplotly(p)

How can I use grouped_ functions with more than one group?

Currently, the grouped_ variants of functions only support repeating the analysis across a single grouping variable. Often, you have to run the same analysis across a combination of more than two grouping variables. This can be easily achieved using purrr package.

Here is an example-

# setup set.seed(123) library(tidyverse, warn.conflicts = FALSE) library(ggstatsplot) # creating a list by splitting dataframe by combination of two different # grouping variables df_list <- mpg %>% dplyr::filter(drv %in% c("4", "f"), fl %in% c("p", "r")) %>% split(x = ., f = list(.$drv, .$fl), drop = TRUE) # checking if the length of the list is 4 length(df_list) # running correlation analyses between # this will return a *list* of plots plot_list <- purrr::pmap( .l = list( data = df_list, x = "displ", y = "hwy", results.subtitle = FALSE, marginal.type = "densigram", messages = FALSE ), .f = ggstatsplot::ggscatterstats ) # arragen the list in a single plot ggstatsplot::combine_plots( plotlist = plot_list, nrow = 2, labels = c("(i)", "(ii)", "(iii)", "(iv)") )


If you find any bugs or have any suggestions/remarks, please file an issue on GitHub:

Session Information

For details, see-