test_that("nice_scatter", { skip_if_not_installed("ggplot2") # Make the basic plot x1 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg" ) expect_s3_class( x1, c("gg", "ggplot2") ) ggplot2::ggsave("plot.jpg", width = 7, height = 7, unit = "in", dpi = 300, path = NULL ) # expect_snapshot_file("plot.jpg") # Not working... # Remove file unlink("plot.jpg") # Change x- and y- axis labels x2 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", ytitle = "Miles/(US) gallon", xtitle = "Weight (1000 lbs)" ) expect_s3_class( x2, c("gg", "ggplot2") ) # Have points "jittered", loess method x3 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", has.jitter = TRUE, method = "loess" ) expect_s3_class( x3, c("gg", "ggplot2") ) # Change the transparency of the points x4 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", alpha = 1 ) expect_s3_class( x4, c("gg", "ggplot2") ) # Remove points x5 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", has.points = FALSE, has.jitter = FALSE ) expect_s3_class( x5, c("gg", "ggplot2") ) # Add confidence band x6 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", has.confband = TRUE ) expect_s3_class( x6, c("gg", "ggplot2") ) # Set x- and y- scales manually x7 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", xmin = 1, xmax = 6, xby = 1, ymin = 10, ymax = 35, yby = 5 ) expect_s3_class( x7, c("gg", "ggplot2") ) # Change plot colour x8 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", colours = "blueviolet" ) expect_s3_class( x8, c("gg", "ggplot2") ) # Add correlation coefficient to plot and p-value x9 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", has.r = TRUE, has.p = TRUE ) expect_s3_class( x9, c("gg", "ggplot2") ) # Change location of correlation coefficient or p-value x10 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", has.r = TRUE, r.x = 4, r.y = 25, has.p = TRUE, p.x = 5, p.y = 20 ) expect_s3_class( x10, c("gg", "ggplot2") ) # Plot by group x11 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl" ) expect_s3_class( x11, c("gg", "ggplot2") ) # Use full range on the slope/confidence band x12 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", has.fullrange = TRUE ) expect_s3_class( x12, c("gg", "ggplot2") ) # Remove lines x13 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", has.line = FALSE ) expect_s3_class( x13, c("gg", "ggplot2") ) # Change order of labels on the legend x14 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", groups.order = c(8, 4, 6) ) expect_s3_class( x14, c("gg", "ggplot2") ) # Change legend labels x15 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", groups.labels = c("Weak", "Average", "Powerful") ) # Warning: This applies after changing order of level expect_s3_class( x15, c("gg", "ggplot2") ) # Add a title to legend x16 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", legend.title = "cylinders" ) expect_s3_class( x16, c("gg", "ggplot2") ) # Plot by group + manually specify colours x17 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", colours = c("burlywood", "darkgoldenrod", "chocolate") ) expect_s3_class( x17, c("gg", "ggplot2") ) # Plot by group + use different line types for each group x18 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", has.linetype = TRUE ) expect_s3_class( x18, c("gg", "ggplot2") ) # Plot by group + use different point shapes for each group x19 <- nice_scatter( data = mtcars, predictor = "wt", response = "mpg", group = "cyl", has.shape = TRUE ) expect_s3_class( x19, c("gg", "ggplot2") ) })