context("test-graphics")
library(ggplot2)
test_that("autoplot.tbl_ts()", {
expect_message(
p <- autoplot(us_deaths),
"Plot variable not specified, automatically selected \\`.vars = value\\`"
)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
us_deaths$value
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = "value")
)
lambda <- 0
p <- autoplot(us_deaths, box_cox(value, lambda))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
log(us_deaths$value)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = "box_cox(value, lambda)")
)
p <- autoplot(lung_deaths_long, value)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
lung_deaths_long$value[c(73:144, 1:72)]
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$colour)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = "value")
)
p <- autoplot(lung_deaths_wide, vars(mdeaths, fdeaths))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(lung_deaths_wide$mdeaths, lung_deaths_wide$fdeaths)
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$PANEL)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = NULL)
)
p <- autoplot(lung_deaths_wide, vars(mdeaths, log(fdeaths)))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(lung_deaths_wide$mdeaths, log(lung_deaths_wide$fdeaths))
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$PANEL)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = NULL)
)
})
test_that("autolayer.tbl_ts()", {
expect_message(
p <- ggplot() + autolayer(us_deaths),
"Plot variable not specified, automatically selected \\`.vars = value\\`"
)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
us_deaths$value
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
lambda <- 0
p <- ggplot() + autolayer(us_deaths, box_cox(value, lambda))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
log(us_deaths$value)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "box_cox(value, lambda)")
)
p <- ggplot() + autolayer(lung_deaths_long, value)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
lung_deaths_long$value[c(73:144, 1:72)]
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$colour)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
p <- ggplot() + autolayer(lung_deaths_wide, vars(mdeaths, fdeaths))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(lung_deaths_wide$mdeaths, lung_deaths_wide$fdeaths)
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$group)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
p <- ggplot() + autolayer(lung_deaths_wide, vars(log(mdeaths), log(fdeaths)))
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(log(lung_deaths_wide$mdeaths), log(lung_deaths_wide$fdeaths))
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$group)),
rep(72, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
})
test_that("autoplot.fbl_ts()", {
skip_if_not_installed("fable")
p <- autoplot(fbl)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p, 2)$y,
mean(fbl$value)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
p <- autoplot(fbl, us_deaths)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p, 2)$y,
mean(fbl$value)
)
expect_equal(
ggplot2::layer_data(p, 3)$y,
us_deaths$value
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
p <- autoplot(fbl_complex, lung_deaths_long, level = 95)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p, 2)$y,
mean(fbl_complex$value[c(1:24, 25:48)])
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p, 2)$colour)),
rep(24, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = "value")
)
p <- autoplot(fbl_mv, lung_deaths_wide, level = 80)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p, 2)$y,
c(fbl_mv[[".mean_fdeaths"]]%||%fbl_mv$.mean[,"fdeaths"], fbl_mv[[".mean_mdeaths"]]%||%fbl_mv$.mean[,"mdeaths"])
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$PANEL)),
rep(12, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index", y = NULL)
)
})
test_that("autolayer.fbl_ts()", {
skip_if_not_installed("fable")
p <- autoplot(us_deaths, value) + autolayer(fbl)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p,3)$y,
mean(fbl$value)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = "value")
)
p <- autoplot(lung_deaths_long, value) + autolayer(fbl_complex, level = 95)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p,3)$y,
mean(fbl_complex$value[c(1:12, 25:36, 13:24, 37:48)])
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p,3)$colour)),
rep(12, 4)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = "value")
)
p <- autoplot(lung_deaths_wide, vars(mdeaths, fdeaths)) + autolayer(fbl_mv, level = 80)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p,3)$y,
c(fbl_mv[[".mean_fdeaths"]]%||%fbl_mv$.mean[,"fdeaths"], fbl_mv[[".mean_mdeaths"]]%||%fbl_mv$.mean[,"mdeaths"])
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p,2)$PANEL)),
rep(12, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("x", "y")],
list(x = "index [1M]", y = NULL)
)
})
test_that("autoplot_dcmp_ts()", {
skip_if_not_installed("feasts")
p <- autoplot(dcmp)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(dcmp$value, dcmp$trend, dcmp$season_year, dcmp$remainder)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("title", "subtitle", "x", "y")],
list(
title = "STL decomposition",
subtitle = "value = trend + season_year + remainder",
x = "index", y = NULL
)
)
p <- autoplot(dcmp_multi)
expect_silent(print(p))
expect_equal(
ggplot2::layer_data(p)$y,
c(dcmp_multi$value, dcmp_multi$trend, dcmp_multi$season_year, dcmp_multi$remainder)
)
expect_equivalent(
as.numeric(table(ggplot2::layer_data(p)$colour)),
rep(288, 2)
)
p_built <- ggplot2::ggplot_build(p)
expect_identical(
p_built$plot$labels[c("title", "subtitle", "x", "y")],
list(
title = "STL decomposition",
subtitle = "value = trend + season_year + remainder",
x = "index", y = NULL
)
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.